天天看點

Linux 常用指令大全Linux 常用指令大全

Linux 常用指令大全

系統資訊

arch 顯示機器的處理器架構

uname -m 顯示機器的處理器架構

uname -r 顯示正在使用的核心版本

cat /proc/cpuinfo 顯示CPU info的資訊

cat /proc/version 顯示核心的版本

cat /proc/net/dev 顯示網絡擴充卡及統計

cat /proc/mounts 顯示已加載的檔案系統

date 顯示系統日期

關機 (系統的關機、重新開機以及登出 )

shutdown -h now 關閉系統

init 0 關閉系統

telinit 0 關閉系統

shutdown -h hours:minutes & 按預定時間關閉系統

shutdown -c 取消按預定時間關閉系統

shutdown -r now 重新開機

reboot 重新開機

logout 登出

檔案和目錄

cd /home 進入 ‘/ home’ 目錄’

cd … 傳回上一級目錄

cd …/… 傳回上兩級目錄

cd 進入個人的主目錄

cd ~user1 進入個人的主目錄

cd - 傳回上次所在的目錄

pwd 顯示工作路徑

ls 檢視目錄中的檔案

ls -F 檢視目錄中的檔案

ls -l 顯示檔案和目錄的詳細資料

ls -a 顯示隐藏檔案

ls [0-9] 顯示包含數字的檔案名和目錄名

tree 顯示檔案和目錄由根目錄開始的樹形結構

lstree 顯示檔案和目錄由根目錄開始的樹形結構

mkdir dir1 建立一個叫做 ‘dir1’ 的目錄’

mkdir dir1 dir2 同時建立兩個目錄

mkdir -p /tmp/dir1/dir2 建立一個目錄樹

rm -f file1 删除一個叫做 ‘file1’ 的檔案’

rmdir dir1 删除一個叫做 ‘dir1’ 的目錄’

rm -rf dir1 删除一個叫做 ‘dir1’ 的目錄并同時删除其内容

rm -rf dir1 dir2 同時删除兩個目錄及它們的内容

mv dir1 new_dir 重命名/移動 一個目錄

cp file1 file2 複制一個檔案

cp dir/* . 複制一個目錄下的所有檔案到目前工作目錄

cp -a /tmp/dir1 . 複制一個目錄到目前工作目錄

cp -a dir1 dir2 複制一個目錄

cp -r dir1 dir2 複制一個目錄及子目錄

ln -s file1 lnk1 建立一個指向檔案或目錄的軟連結

ln file1 lnk1 建立一個指向檔案或目錄的實體連結

touch -t 0712250000 file1 修改一個檔案或目錄的時間戳 - (YYMMDDhhmm)

檔案搜尋

find / -name file1 從 ‘/’ 開始進入根檔案系統搜尋檔案和目錄

find / -user user1 搜尋屬于使用者 ‘user1’ 的檔案和目錄

find /home/user1 -name *.bin 在目錄 ‘/ home/user1’ 中搜尋帶有’.bin’ 結尾的檔案

find /usr/bin -type f -atime +100 搜尋在過去100天内未被使用過的執行檔案

find /usr/bin -type f -mtime -10 搜尋在10天内被建立或者修改過的檔案

磁盤空間

df -h 顯示已經挂載的分區清單

ls -lSr |more 以尺寸大小排列檔案和目錄

du -sh dir1 估算目錄 ‘dir1’ 已經使用的磁盤空間’

du -sk * | sort -rn 以容量大小為依據依次顯示檔案和目錄的大小

使用者和群組

groupadd group_name 建立一個新使用者組

groupdel group_name 删除一個使用者組

groupmod -n new_group_name old_group_name 重命名一個使用者組

useradd -c "Name Surname " -g admin -d /home/user1 -s /bin/bash user1 建立一個屬于 “admin” 使用者組的使用者

useradd user1 建立一個新使用者

userdel -r user1 删除一個使用者 ( ‘-r’ 排除主目錄)

usermod -c “User FTP” -g system -d /ftp/user1 -s /bin/nologin user1 修改使用者屬性

passwd 修改密碼

passwd user1 修改一個使用者的密碼 (隻允許root執行)

檔案的權限 - 使用 “+” 設定權限,使用 “-” 用于取消

ls -lh 顯示權限

chmod ugo+rwx directory1 設定目錄的所有人(u)、群組(g)以及其他人(o)以讀(r )、寫(w)和執行(x)的權限

chmod go-rwx directory1 删除群組(g)與其他人(o)對目錄的讀寫執行權限

chown user1 file1 改變一個檔案的所有人屬性

chown -R user1 directory1 改變一個目錄的所有人屬性并同時改變改目錄下所有檔案的屬性

chattr +a file1 隻允許以追加方式讀寫檔案

打包和壓縮檔案

bunzip2 file1.bz2 解壓一個叫做 'file1.bz2’的檔案

bzip2 file1 壓縮一個叫做 ‘file1’ 的檔案

gunzip file1.gz 解壓一個叫做 'file1.gz’的檔案

gzip file1 壓縮一個叫做 'file1’的檔案

gzip -9 file1 最大程度壓縮

rar a file1.rar test_file 建立一個叫做 ‘file1.rar’ 的包

rar a file1.rar file1 file2 dir1 同時壓縮 ‘file1’, ‘file2’ 以及目錄 ‘dir1’

rar x file1.rar 解壓rar包

unrar x file1.rar 解壓rar包

tar -cvf archive.tar file1 建立一個非壓縮的 tarball

tar -xvf archive.tar 釋放一個包

tar -xvf archive.tar -C /tmp 将壓縮包釋放到 /tmp目錄下

tar -cvfj archive.tar.bz2 dir1 建立一個bzip2格式的壓縮包

tar -jxvf archive.tar.bz2 解壓一個bzip2格式的壓縮包

tar -cvfz archive.tar.gz dir1 建立一個gzip格式的壓縮包

tar -zxvf archive.tar.gz 解壓一個gzip格式的壓縮包

zip file1.zip file1 建立一個zip格式的壓縮包

zip -r file1.zip file1 file2 dir1 将幾個檔案和目錄同時壓縮成一個zip格式的壓縮包

unzip file1.zip 解壓一個zip格式壓縮包

YUM 軟體包更新器

yum install package_name 下載下傳并安裝一個rpm包

yum localinstall package_name.rpm 将安裝一個rpm包,使用你自己的軟體倉庫為你解決所有依賴關系

yum update package_name.rpm 更新目前系統中所有安裝的rpm包

yum update package_name 更新一個rpm包

yum remove package_name 删除一個rpm包

yum list 列出目前系統中安裝的所有包

yum search package_name 在rpm倉庫中搜尋軟體包

yum clean packages 清理rpm緩存删除下載下傳的包

yum clean headers 删除所有頭檔案

yum clean all 删除所有緩存的包和頭檔案

檢視檔案内容

cat file1 從第一個位元組開始正向檢視檔案的内容

tac file1 從最後一行開始反向檢視一個檔案的内容

more file1 檢視一個長檔案的内容

less file1 類似于 ‘more’ 指令,但是它允許在檔案中和正向操作一樣的反向操作

head -2 file1 檢視一個檔案的前兩行

tail -2 file1 檢視一個檔案的最後兩行

tail -f /var/log/messages 實時檢視被添加到一個檔案中的内容

文本處理

grep Aug /var/log/messages 在檔案 '/var/log/messages’中查找關鍵詞"Aug"

grep ^Aug /var/log/messages 在檔案 '/var/log/messages’中查找以"Aug"開始的詞彙

grep [0-9] /var/log/messages 選擇 ‘/var/log/messages’ 檔案中所有包含數字的行

grep Aug -R /var/log/* 在目錄 ‘/var/log’ 及随後的目錄中搜尋字元串"Aug"

sed ‘s/stringa1/stringa2/g’ example.txt 将example.txt檔案中的 “string1” 替換成 “string2”

sed ‘/^KaTeX parse error: Expected 'EOF', got '#' at position 49: …所有空白行 sed '/ *#̲/d; /^/d’ example.txt 從example.txt檔案中删除所有注釋和空白行

echo ‘esempio’ | tr ‘[:lower:]’ ‘[:upper:]’ 合并上下單元格内容

sed -e ‘1d’ result.txt 從檔案example.txt 中排除第一行

sed -n ‘/stringa1/p’ 檢視隻包含詞彙 “string1"的行

sed -e ‘s/ $//’ example.txt 删除每一行最後的空白字元

sed -e ‘s/stringa1//g’ example.txt 從文檔中隻删除詞彙 “string1” 并保留剩餘全部

sed -n ‘1,5p;5q’ example.txt 檢視從第一行到第5行内容

sed -n ‘5p;5q’ example.txt 檢視第5行

sed -e 's/00/0/g’ example.txt 用單個零替換多個零

cat -n file1 标示檔案的行數

cat example.txt | awk ‘NR%2==1’ 删除example.txt檔案中的所有偶數行

echo a b c | awk ‘{print $1}’ 檢視一行第一欄

echo a b c | awk ‘{print $1,$3}’ 檢視一行的第一和第三欄

paste file1 file2 合并兩個檔案或兩欄的内容

paste -d ‘+’ file1 file2 合并兩個檔案或兩欄的内容,中間用”+"區分

sort file1 file2 排序兩個檔案的内容

sort file1 file2 | uniq 取出兩個檔案的并集(重複的行隻保留一份)

sort file1 file2 | uniq -u 删除交集,留下其他的行

sort file1 file2 | uniq -d 取出兩個檔案的交集(隻留下同時存在于兩個檔案中的檔案)

comm -1 file1 file2 比較兩個檔案的内容隻删除 ‘file1’ 所包含的内容

comm -2 file1 file2 比較兩個檔案的内容隻删除 ‘file2’ 所包含的内容

comm -3 file1 file2 比較兩個檔案的内容隻删除兩個檔案共有的部分

繼續閱讀