alias 命令的用法/相對路徑和絕對路徑/cd命令/rmdir,mkdir 創建和刪除命令/rm命令
alias是用做別名用 如下:
[root@alex ~]# alias
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
如何做別名如下:
[root@alex ~]# alias Alex='ls -l -lhad' 別名的寫法
[root@alex ~]# Alex
dr-xr-x---. 7 root root 4.0K Oct 18 08:46 .
which命令用於查找並顯示給定命令的絕對路徑,環境變量PATH中保存了查找命令時需要遍歷的目錄。which指令會在環境變量$PATH設置的目錄裏查找符合條件的文件。也就是說,使用which命令,就可以看到某個系統命令是否存在,以及執行的到底是哪一個位置的命令。
[root@alex ~]# which pwd
/usr/bin/pwd
絕對路徑
[root@alex ~]# ls /etc/passwd
/etc/passwd
[root@alex ~]# ls /etc/sysconfig/network-scripts
從根開始的都是絕對路徑
linux 從/開始的都是絕對路徑
絕對路徑是從/(也被稱爲根目錄)開始的,比如/usr、/etc/如果一個路徑是從/開始的,它一定是絕對路徑,這樣就好理解了。
[root@alex ~]# pwd 查看當前用戶的位置
/root
相對路徑 是指相對當前所在的路徑 如下圖 :
[root@alex ~]# cd /usr/local/src
[root@alex src]# cd
cd 的用法
cd 進入用戶主目錄
cd ~ 進入用戶主目錄
cd - 返回進入此目錄之前所在的目錄
cd .. 返回上級目錄(若當前目錄爲“/“,則執行完後還在“/";".."爲上級目錄的意思);
cd ../.. 返回上兩級目錄
cd !$ 把上個命令的參數作爲cd參數使用。
[root@alex ~]# cd /etc/sysconfig
[root@alex sysconfig]# cd -
[root@alex sysconfig]# cd - cd - 是交替的用法
/root
[root@alex ~]# cd -
/etc/sysconfig
[root@alex sysconfig]# cd ~ 和用戶的家目錄是一樣的
[root@alex ~]# pwd
/root
[root@alex ~]# cd .. 進入上一級目錄
[root@alex /]#
[root@alex /]# cd /etc/sysconfig/network-scripts
[root@alex network-scripts]# pwd
/etc/sysconfig/network-scripts
創建和刪除目錄
mkdir 是創建目錄用的
[root@alex network-scripts]# date
Tue Oct 24 08:48:47 CST 2017
[root@alex network-scripts]# mkdir /tmp/alex 創建 目錄的用法
[root@alex network-scripts]# ls -l /tmp/
total 8
srwxr-xr-x. 1 root root 0 Oct 21 10:47 Aegis-<Guid(5A2C30A2-A87D-490A-9281-6765EDAD7CBA)>
drwxr-xr-x. 2 root root 4096 Oct 24 08:49 alex
drwx------. 3 root root 4096 Oct 21 10:47 systemd-private-2b74b96d2c354f119f60360cbd9383fa-ntpd.service-0DdvFj
mkdir 常用的選項
-m, --mode=模式,設定權限<模式> (類似 chmod),而不是 rwxrwxrwx 減 umask
-p, --parents 可以是一個路徑名稱。此時若路徑中的某些目錄尚不存在,加上此選項後,系統將自動建立好那些尚不存在的目錄,即一次可以建立多個目錄;
-v, --verbose 每次創建新目錄都顯示信
--help 顯示此幫助信息並退出
--version 輸出版本信息並退出
[root@alex network-scripts]# mkdir /tmp/alex/1/2/3 tmp下沒有1無法創建
mkdir: cannot create directory ‘/tmp/alex/1/2/3’: No such file or directory
[root@alex network-scripts]# ls -l /tmp/
total 8
srwxr-xr-x. 1 root root 0 Oct 21 10:47 Aegis-<Guid(5A2C30A2-A87D-490A-9281-6765EDAD7CBA)>
drwxr-xr-x. 3 root root 4096 Oct 24 09:09 alex
drwx------. 3 root root 4096 Oct 21 10:47 systemd-private-2b74b96d2c354f119f60360cbd9383fa-ntpd.service-0DdvFj
[root@alex network-scripts]# tree /tmp/
/tmp/
├── Aegis-<Guid(5A2C30A2-A87D-490A-9281-6765EDAD7CBA)>
├── alex
│ └── 1
│ └── 2
│ └── 3
└── systemd-private-2b74b96d2c354f119f60360cbd9383fa-ntpd.service-0DdvFj
└── tmp
6 directories, 1 file
[root@alex network-scripts]# mkdir -pv /tmp/alex/1/2/3/4 加上v是可視 可以看到創建的過程
rmdir
[root@alex ~]# rmdir /tmp/alex/1/2/3 可以刪除目錄前提目錄是空的 ,不可以刪除非空目錄
rmdir: failed to remove ‘/tmp/alex/1/2/3’: Directory not empty
-p或--parents:刪除指定目錄後,若該目錄的上層目錄已變成空目錄,則將其一併刪除;
-v或-verboes:顯示命令的詳細執行過程;
[root@alex ~]# rmdir -p /tmp/alex/1/2/3/4
rmdir: failed to remove directory ‘/tmp’: Device or resource busy
[root@alex ~]# tree /tmp 已經刪除
/tmp
├── Aegis-<Guid(5A2C30A2-A87D-490A-9281-6765EDAD7CBA)>
└── systemd-private-2b74b96d2c354f119f60360cbd9383fa-ntpd.service-0DdvFj
└── tmp
rm命令
-d:直接把欲刪除的目錄的硬連接數據刪除成0,刪除該目錄;
-f:強制刪除文件或目錄; -i:刪除已有文件或目錄之前先詢問用戶;
-r或-R:遞歸處理,將指定目錄下的所有文件與子目錄一併處理;
--preserve-root:不對根目錄進行遞歸操作;
-v:顯示指令的詳細執行過程。
[root@alex ~]# rm -f /tmp/alex/1/2/3/4/*
[root@alex ~]# rm -fv /tmp/alex/1/2/3/4/*
[root@alex ~]# rm -fv /tmp/alex/1/2/3/4/^C
[root@alex ~]# tree /tmp
/tmp
├── Aegis-<Guid(5A2C30A2-A87D-490A-9281-6765EDAD7CBA)>
├── alex
│ └── 1
│ └── 2
│ └── 3
│ └── 4
└── systemd-private-2b74b96d2c354f119f60360cbd9383fa-ntpd.service-0DdvFj
└── tmp
[root@alex ~]# mkdir -v zx 創建可視 告知已經創建
mkdir: created directory ‘zx’
[root@alex ~]# rm -riv zx p 交換刪除目錄下的文件
rm: descend into directory ‘zx’? n
rm: descend into directory ‘p’? y
rm: remove regular empty file ‘p/1.txt’? y
removed ‘p/1.txt’
rm: remove directory ‘p’? n
[root@alex ~]# history 命令歷史
可以列出所有敲過的命令
也可以 !tree
rm -f 是強制的刪除
rm -r 一連的把目錄刪除掉
rm -rfv 什麼都不提示 直接刪除
[root@alex ~]# rm -rfv /tmp/alex/1/2/3/
removed directory: ‘/tmp/alex/1/2/3/’
[root@alex ~]# rm -rfv /tmp/alex/1/2
removed directory: ‘/tmp/alex/1/2’
[root@alex ~]# tree /tmp
/tmp
├── Aegis-<Guid(5A2C30A2-A87D-490A-9281-6765EDAD7CBA)>
├── alex
│ └── 1
└── systemd-private-2b74b96d2c354f119f60360cbd9383fa-ntpd.service-0DdvFj
└── tmp