文章目錄
- 其他文章:
- 1 基本命令
- 1.1 命令入門
- 1.1.1 命令提示符詳解
- 1.1.2 命令格式
- 1.2 獲取命令的幫助
- 1.2.1 查手冊&搜索引擎
- 1.2.2 man
- 1.2.2.1 man 安裝
- 1.2.2.2 man 的使用
- 1.2.3 命令 --help
- 1.3 echo
- 1.4 環境變數:PATH
- 1.5 ls
- 1.6 pwd
- 1.7 cd
- 1.8 mkdir
- 1.9 rm
- 1.10 cp
- 1.11 mv
- 1.12 ln
- 1.13 ps
- 1.14 test 命令
其他文章:
Linux——(1)基本命令
Linux——(2)檔案系統、系統操作、文本操作命令、檔案壓縮與打包
1 基本命令
1.1 命令入門
1.1.1 命令提示符詳解

用戶名@主機名 當前目錄 #系統權限 $普通權限
1.1.2 命令格式
命令 選項 引數 (三者之間要有空格,區分大小寫)
command [-options] [args]
[args]:引數(多個引數之間用空格分隔)
案例演示


1.2 獲取命令的幫助
- 查手冊
- man 命令
- 命令 --help
- 搜索引擎
1.2.1 查手冊&搜索引擎
手冊見《參考手冊&資料》
搜索:必應 www.bing.com、谷歌/百度等
1.2.2 man
1.2.2.1 man 安裝
當前虛擬機中不能直接使用 man,默認是沒有安裝的,不識別 man 命令,

所以需要安裝,安裝 man 和 man-pages 手冊,查看命令的幫助資訊
yum install man man-pages -y

man ls

q 退出命令查看
看到的全是英文,是不是很酸爽,慢慢多看看就好了,如果你英語爛到完全看不懂,那我再教你一招,
漢化 man提示資訊,
要想漢化 man 提示資訊,系統中需要安裝 man-pages-zh-CN 軟體包,默認情況下, 系統自帶的 yum 源不包含 man-pages-zh-CN,

默認的源存放目錄:

所以下載后的第三方 yum 源 epel 也保存到該目錄下,使用 yum 命令時會去該目錄下 決議后綴名為 repo 的檔案,

wget 不能使用,需要先安裝,安裝 wget,否則無法通過該命令進行下載,
[root@node1 ~]# yum install wget -y
然后將 epel 的源放到本地,然后清除 yum 本地快取,重新生成快取,

是不是可以使用了呢,相信你已經迫不及待的想要測驗一把了,
[root@node1 ~]# man ls
發現還是英文,怎么回事? 這是因為雖然你安裝了 man 的中文包,但是系統的語言還是英文環境,
[root@node1 ~]# echo $LANG
結果:en_US.UTF-8
所以需要修改系統的語言環境,
[root@node1 ~]# LANG=zh_CN.UTF-8
[root@node1 ~]# echo $LANG
結果:zh_CN.UTF-8
然后再次測驗便有中文資訊了,
但是這樣修改這有效到斷開連接,或者下次重啟系統,如何才能長期有效呢?
[root@node1 ~]# vim /etc/sysconfig/i18n
1.2.2.2 man 的使用
enter 向下一行
空格按頁向下翻
b 向上翻頁
p 直接翻到首頁
查找按 /要查找的內容
查找 下一個/上一個:按 n/N;
退出按 q
擴展內容:
man
- 1 用戶命令(/bin,/usr/bin,/usr/local/bin)
- 2 系統呼叫
- 3 庫函式
- 4 特殊檔案(設備檔案)
- 5 檔案格式(組態檔的語法)
- 6 游戲
- 7 雜項(Miscellaneous)
- 8 管理命令(/sbin,/usr/sbin,/usr/local/sbin)
- 指定查看某種幫助:
[root@node1 ~]# man 2 read

[root@node1 ~]# man read

1.2.3 命令 --help
[root@node1 ~]# mv --help

1.3 echo
[root@node1 ~]# help echo

echo -n 表示不要另起新行
[root@node1 ~]# echo "hello world"
hello world
[root@node1 ~]# echo -n "hello world"
hello world
-e 表示解釋逃逸字符
[root@node1 ~]# echo -e "hello \nworld"
hello world
[root@node1 ~]# echo "hello \nworld"
hello \nworld
1.4 環境變數:PATH
當在 shell 中執行命令的時候,默認到 PATH 指定的路徑中查找可執行檔案,
如果在 PATH 中的多個目錄都包含該可執行檔案,則執行最先找到的,
[root@node1 ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
如果找不到,這提示命令不識別,
1.5 ls
ls 命令用于列出目錄內容
ls
添加-l 以長格式輸出,列出根目錄下內容的詳細串列
ls -l
也可以后面跟多個目錄,列出多個目錄的內容
ls / /usr
也可以通過命令的別名列出詳細串列
ll
ls -a
ls -a -l
ls -al
1.6 pwd
列印當前作業目錄路徑
pwd
1.7 cd
cd 用于更改 shell 作業目錄,也就是切換目錄 change directory cd
cd /etc
如果 cd 后什么都不寫,表示直接回當前用戶家目錄
cd
cd /etc
cd 后跟波浪線,也表示回用戶家目錄
cd ~
cd 后也可以跟減號(-)用以表示回到最后一次切換之前的目錄,多次使用減號在最近兩個目錄之間切換
cd /etc/sysconfig/network-scritps
cd -
root 用戶可以直接通過絕對路徑進到普通用戶的家目錄
cd /home/god
cd ..
ll
也可以直接跟波浪線用戶名表示直接進入到某個用戶的家目錄
cd ~zhz到用戶 zhz家中去,root 不受限制
1.8 mkdir
mkdir 用于創建目錄
mkdir abc
mkdir a1 a2 a3
如果直接創建多層目錄,則報錯,因為默認只能創建最后一級目錄
mkdir a/b/c
可以添加-p 選項,用以創建多層目錄,因為系統發現某一級目錄不存在的時候創建父目錄
mkdir -p a/b/c
也可以在 mkdir 后跟多個目錄,用于一次性創建多個目錄
mkdir ./abc/1dir ./abc/2dir ./abc/3dir
但是可以使用大括號高效創建相似的目錄
mkdir ./abc/{x,y,z}dir
mkdir ./abc/{x..z}dir
1.9 rm
rm 用于洗掉檔案
直接洗掉,需要確認 yes
rm file

添加-f 選項可以不用確認強制洗掉
rm -f file
如果 rm 的引數是目錄,則會提示需要迭代洗掉而不能成功
rm adir

此時可以添加-r 引數表示迭代洗掉
rm -r dira
也可以使用-rf 選項,迭代強制洗掉某個檔案或目錄,此命令慎用,
rm -rf dira
尤其是
!!!! rm -rf /
1.10 cp
? cp 拷貝
- cp 檔案… 目標目錄 拷貝檔案…到目標目錄,可以同時拷貝多個檔案,檔案名之間用空格隔開

- cp -r 目錄 目標目錄


1.11 mv
mv 用于移動或重命名檔案
- 移動檔案/目錄 #mv 源檔案/[源檔案 1 源檔案 2] 目標

- Linux 中沒有專門改名的命令,兼職改名作業:

1.12 ln
用于創建硬鏈接或軟鏈接
ln
可以使用 ll -i 選項讓 ll 列印檔案的 inode 資訊
[root@node1 ~]# cp /etc/profile ./
[root@node1 ~]# ll –i
創建硬鏈接
[root@node1 ~]# ln profile ln1
創建軟鏈接:讓 ln2 指向 profile, 給 profile 創建軟連接,相當于 windows 中的快捷方式
[root@node1 ~]# ln -s profile ln2
再次列印 inode 資訊查看
[root@node1 ~]# ll -i

如果兩個檔案 inode 一樣,表示兩個檔案(ln1 和 profile)實際上是同一個檔案, 硬連接,如果 inode 不一樣,但是有 ln2->profile,表示 ln2 是 profile 的軟鏈接,
注意:ln1、ln2 都不能提前創建,或是已經存在的檔案,否則報錯,
ln: creating symbolic link `ln1': File exists
軟連接洗掉不會洗掉源檔案
硬鏈接洗掉后如果源檔案沒有硬鏈接,則檔案被洗掉
如何在不使用 mv 的情況下移動檔案?可以操作硬連接
1.13 ps
可以通過命令查看系統內行程資訊
ps -ef
查看磁盤使用情況

? 行程查看命令
- ps(process status) : 將某個時間點的程式運作情況截取下來
- 選項和引數
- a :和輸入終端(terminal)關聯的所有 process,通常與 x 一起使用, 列出完整資訊,
- x :后臺行程,通常與 a 這個引數一起使用,可列出較完整資訊
- u :有效使用者 (effective user) 相關的 process ?
? 常用組合
- ps aux 觀察系統所有的程式資料 (常用)
[root@node1 /]# ps aux

[root@node1 /]# ps au

? 以下為各選項的含義
- USER:該 process 屬于那個使用者
- PID :該 process 的程式識別符號,
- %CPU:該 process 使用掉的 CPU 資源百分比;
- %MEM:該 process 所占用的物理記憶體百分比;
- VSZ :該 process 使用掉的虛擬記憶體量 (Kbytes)
- RSS :該 process 占用的物理的記憶體量 (Kbytes)
- TTY :該 process 是在那個終端機上面運作,若與終端機無關則顯示 ?, 另外, tty1-tty6 是本機上面的登入者程式,若為 pts/0 等等的,則表示為由網路 連接進主機的程式,
- STAT:該行程目前的狀態,狀態顯示與 ps -l 的 S 旗標相同 (R/S/D/T/Z)
- START:該 process 被觸發啟動的時間;
- TIME :該 process 實際使用 CPU 運作的時間,
- COMMAND:該程式的實際命令為何?
進入到/usr 目錄;usr 不是用戶的意思,而是 unix software resources 的簡寫
cd /usr
查看內容
ll
1.14 test 命令
計算 3 > 2 的結果,列印回傳值,計算 3 < 2 的結果,列印回傳值,
echo $? 列印上一行命令的執行結果


成立回傳 0(true),不成立回傳 1(false)

[]和內容之間一定要有空格,否則拋錯,
我是小白弟弟,一個在互聯網行業的小白,立志成為一名架構師
https://blog.csdn.net/zhouhengzhe?t=1
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/278180.html
標籤:其他
