環境變量PATH 、which命令、cp命令 、mv命令、文檔查看cat/more/less/head/tail

環境變量

在Linux系統中咱們之因此可以直接使用命令是由於命令的絕對路徑在環境變量裏面,若是咱們將該命令的絕對路徑移出環境變量則不能直接使用。在實驗以前講一個which命令,這個命令能夠用來查看一個命令的絕對路徑和是否作過別名bash

[root@localhost ~]# which ls
alias ls='ls --color=auto'
	/usr/bin/ls
[root@localhost ~]# which mkdir
/usr/bin/mkdir
[root@localhost ~]# which rm
alias rm='rm -i'
	/usr/bin/rm
[root@localhost ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[root@localhost ~]# ^C
[root@localhost ~]#

在上面的代碼中咱們看到ls =ls --color=auto /usr/bin/ls 。是說這個ls命令實際上是/usr/bin/ls命令顏色自動顯示,上面代碼中的echo是用來輸出$PATH的值。若是咱們把ls命令移出/usr/bin 到/root下,會出現怎樣的狀況呢?less

[root@localhost ~]# mv /usr/bin/ls /root
[root@localhost ~]# ls
-bash: /usr/bin/ls: 沒有那個文件或目錄

能夠看到ls命令再也不生效,而使用絕對路徑/root/ls 命令會生效,那怎樣才能使ls再次生效呢?能夠把/root/ls加入到環境變量中去,其操做以下code

root@localhost ~]# PATH=$PATH:/root
[root@localhost ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root
[root@localhost ~]# ls
22  anaconda-ks.cfg  ls

爲了避免影響使用,咱們把ls文件還原ip

mv命令

在前面一段代碼中咱們還使用到了mv命令,mv=move 移動的意思 ,使用格式爲:mv [參數] [源文件或源目錄] [目標文件或目標目錄]字符串

  • 當目標文件是目錄,且目錄不存在時,就會把源目錄重命名爲目標目錄名。
  • 當目標文件是目錄,且目錄存在時,就會把源目錄放到目標目錄下面。
  • 當目標文件是文件,且文件不存在時,會把源文件重命名爲目標文件。
  • 當目標文件是文件,且文件存在時,會提示是否覆蓋掉目標文件。
[root@localhost ~]# mkdir /tmp/11
[root@localhost ~]# mkdir /tmp/11/22
[root@localhost ~]# mkdir /tmp/33
[root@localhost ~]# mv /tmp/11/22 /tmp/33
[root@localhost ~]# tree /tmp
/tmp
├── 11
├── 33
│   └── 22
├── ks-script-PUqKsg
└── yum.log

3 directories, 2 files
[root@localhost ~]# mv /tmp/33/22 /tmp/11/44
[root@localhost ~]# tree /tmp
/tmp
├── 11
│   └── 44
├── 33
├── ks-script-PUqKsg
└── yum.log

3 directories, 2 files
[root@localhost ~]# touch /tmp/11/44/123
[root@localhost ~]# !tree
tree /tmp
/tmp
├── 11
│   └── 44
│       └── 123
├── 33
├── ks-script-PUqKsg
└── yum.log

3 directories, 3 files
[root@localhost ~]# mv /tmp/11/44/123 /tmp/33
[root@localhost ~]# !tree
tree /tmp
/tmp
├── 11
│   └── 44
├── 33
│   └── 123
├── ks-script-PUqKsg
└── yum.log

3 directories, 3 files
[root@localhost ~]# !touch
touch /tmp/11/44/123
[root@localhost ~]# !tree
tree /tmp
/tmp
├── 11
│   └── 44
│       └── 123
├── 33
│   └── 123
├── ks-script-PUqKsg
└── yum.log

3 directories, 4 files
[root@localhost ~]# mv /tmp/11/44/123 /tmp/33/123
mv:是否覆蓋"/tmp/33/123"? y
[root@localhost ~]# !tree
tree /tmp
/tmp
├── 11
│   └── 44
├── 33
│   └── 123
├── ks-script-PUqKsg
└── yum.log

3 directories, 3 files

cp 命令

cp命令=copy 格式爲copy[參數] [源文件] [目標文件]變量

  • 若是要複製目錄則必須使用參數 -r 。
  • 若是源文件和目標文件名稱不同則表示,複製這個文件並重命名目標文件。
[root@localhost ~]# !tree
tree /tmp
/tmp
├── 11
│   └── 44
├── 33
│   └── 123
├── ks-script-PUqKsg
└── yum.log

3 directories, 3 files
[root@localhost ~]# cp /tmp/33/123 /tmp/555
[root@localhost ~]# !tree
tree /tmp
/tmp
├── 11
│   └── 44
├── 33
│   └── 123
├── 555
├── ks-script-PUqKsg
└── yum.log

3 directories, 4 files
[root@localhost ~]# cp /tmp/33 /tmp/55
cp: 略過目錄"/tmp/33"
[root@localhost ~]# cp -r /tmp/33 /tmp/55
[root@localhost ~]# !tree
tree /tmp
/tmp
├── 11
│   └── 44
├── 33
│   └── 123
├── 55
│   └── 123
├── 555
├── ks-script-PUqKsg
└── yum.log

4 directories, 5 files

cat 、tac、more 、less、 head、 tail命令

這幾個命令都是用來查看文件內容的命令,格式爲cat [參數] [文件名], 不加任何參數就會把文件裏全部的內容都拋到屏幕上file

  • -n 查看問件時,會把行號也顯示出來。
  • -A顯示全部的內容,包括特殊符號

tac 命令和cat是同樣的,可是它是反着顯示,它會把最後一行顯示在第一行。

more 命令

more命令會分屏顯示內容,看完一屏後可使用空格鍵看下一屏,Ctrl +d 能夠向上翻屏 ,Ctrl+f能夠向下翻屏。若是想提早退出,可使用q鍵。搜索

less命令

less命令跟more命令同樣會分屏顯示內容。yum

  • 按空格鍵同樣能夠翻頁
  • 按j鍵能夠向下翻一行
  • k鍵能夠向上翻行
  • / 按下這個鍵 並輸入字符串能夠在文件中查找這個字符串,按n顯示下一個
  • ? 這個和 / 的做用是同樣的,不過/是從上向下搜索,而?是從下往上搜索。

head 和tail 命令

  • head命令不加參數後面直接跟文件名,會顯示文件內容的前十行
  • tail命令不加參數後面直接跟文件名,會顯示文件內容的後十行
  • head -n 3 文件名 會顯示文件內容的前3行
  • tail - 5 文件名 會顯示文件內容的最後5行。
相關文章
相關標籤/搜索