linux基礎2

1.文件管理常用命令

<1>mkdir,rmdir

mkdir:make directory

mkdir [OPTION]… DIRECTORY…

-p:自動按需創建父目錄;

-v:verbose,顯示詳細過程;

-m MODE;直接給定權限;

注意:路徑基名方為命令的作用對象;基名之前的路徑必須存在;

rmdir:remove empty directories

rmdir [OPTION]… DIRECTORY…

-p:刪除某目錄后,如果其父目錄為空,則一并刪除之;

-v:顯示過程;

 

<2>文件管理工具:cp,mv,rm

cp命令:copy

源文件;目標文件;

單源復制:cp [OPTION]… [-T] SOURCE DEST

多源復制:cp [OPTION]… SOURCE… DIRECTORY

cp [OPTION]… -t DIRECTORY SOURCE…

單元復制:cp [OPTION]… [-T] SOURCE DEST

如果DEST不存在,則事先創建此文件,并復制源文件的數據流至DEST中;

如果DEST存在,

如果DEST是非目錄文件:則會復制源文件的數據流,覆蓋目標文件;

如果DEST是目錄文件:則現在DEST目錄下創建一個與源文件同名的文件,并復制其數據流;

多源復制:cp [OPTION]… SOURCE… DIRECTORY

cp [OPTION]… -t DIRECTORY SOURCE…

如果DEST不存在,作物

如果DEST存在,

如果DEST是非目錄文件:錯誤

如果DEST是目錄文件:分別復制每個文件至目標目錄中,并保持原名;

常用選項:

-i:交互式復制,即覆蓋之前提醒用戶確認;

-f:強制覆蓋目標文件;

-r,R:遞歸復制目錄;

-d:復制符號鏈接文件本身,而非其指向的源文件;

-a:-dR –preserve=all,archive,用于實現歸檔;

–preserve

mode:權限

owership:屬主和屬組

timestamp:時間戳

context:擴展屬性

links:符號鏈接

all:上述所有屬性

mv命令:move

mv – move (rename) files

mv [OPTION]… [-T] SOURCE DEST

mv [OPTION]… SOURCE… DIRECTORY

mv [OPTION]… -t DIRECTORY SOURCE…

常用選項:

-i:交互式

-f:force

rm命令:remove

rm [OPTION]… FILE…

常用選項:

-i:interactive

-f:force

-r:recursive

刪除目錄:rm -rf /PATH/TO/DIR

危險操作:rm -rf /?? rm -rf /*

 

<3>常用命令pwd,ls,cat,tac,file

常用命令:

pwd:printing working directory

顯示工作目錄

cd:change directory

切換目錄

cd [/PATH/TO/SOMEDIR]

cd 不加任何參數,表示回到家目錄 =

cd ~:切換到自己的家目錄

cd ~USERNAME:切換至指定用戶的家目錄;

cd -:在上一次所在目錄與當前目錄之間來回切換;

相關的環境變量

$PWD:當前目錄 這是個變量,echo $PWD

$OLDPWD

ls: list,列出指定目錄下的內容

ls [OPTIONS].. filename

-a:顯示所有文件,包括隱藏文件

-A:顯示出.和..之外的所有文件

-l:–long,長格式列表,即顯示文件的詳細屬性信息

 

-:文件類型,- ,d,b,c,l,s,p

左三位rw-:文件的屬主的權限;

中三位:文件屬組的權限;

后三位:其他用戶的權限

1:數字表示文件被硬鏈接的次數;

第一個root,文件的屬主

第二個root,文件的屬組

8957:數字表示文件的大小,單位是字節;

10月 14 19:34:文件最后一次被修改的時間;

-h,–human-readable:對文件的大小單文進行換算,換算后的結果可能會非精確值;

-ld,d和l結合使用,查看目錄的自身而非其內部的文件列表

-r:reverse,逆序顯示

-R:recursive,遞歸顯示

 

cat:concatenate

文件文本查看工具:

可以接多個文件,一塊顯示

cat [OPTIONS]… [FILENAME]..

-n:給顯示的文本行編號

-E:顯示行結束符$

tac:文件文本查看工具,文件內容是逆序的

 

file:查看文件內容類型;

file [FILE]…

echo:回顯

echo [SHORT-OPTION].. [STRING]…

-n:不進行換行;

-e:讓轉義符生效;

\n:換行

\t:制表符

STRING可以使用引號,單引號和雙引號均可用

單引號:強引用,變量引用不執行替換

echo ‘$SHELL’

雙引號:弱引用,變量引用會被替換

echo “$SHELL”

注意:變量引用的正規符號 $(name)

 

2.bash的基礎特性:命令的執行狀態結果與命令行展開

bash的基礎特性:命令的執行狀態結果

命令執行的狀態結果:

bash通過狀態返回值來輸出此結果;

成功:0

失?。?-255

命令執行完成之后,其狀態返回值保存于bash的特殊變量$?中; echo $?看最近一條命令的狀態返回值;

命令正常執行時,有的還回有命令返回值;

根據命令及其功能不同,結果各不相同;

引用命令的執行結果:

$(COMMAND)

或`COMMAND`?? //注意反引號,左上角1旁邊,只能在英文輸入法時鍵入

bash的基礎特性之:命令行展開

~:自動展開為用戶的家目錄,或指定的用戶的家目錄;

{}:可承載以逗號分隔的路徑列表,并能夠將其展開為多個路徑;

例如:/tmp/{a,b},相當于 /tmp/a , tmp/b

 

3.利用多選項創建目錄結構

mkdir -v {a,b}_{c,d}

[root@localhost tmp]# ll
total 0
drwxr-xr-x. 2 root root? 6 Jul? 1 22:26 a_c
drwxr-xr-x. 2 root root? 6 Jul? 1 22:26 a_d
drwxr-xr-x. 2 root root? 6 Jul? 1 22:26 b_c
drwxr-xr-x. 2 root root? 6 Jul? 1 22:26 b_d

 

mkdir -pv /tmp/mysysroot/{bin,etc/sysconfig/network-scripts,sbin,usr/{bin,lib,lib64,local/{bin,etc,lib,sbin},sbin},var/{cache,log,run}}

[root@localhost tmp]# tree mysysroot/
mysysroot/
├── bin
├── etc
│?? └── sysconfig
│?????? └── network-scripts
├── sbin
├── usr
│?? ├── bin
│?? ├── lib
│?? ├── lib64
│?? ├── local
│?? │?? ├── bin
│?? │?? ├── etc
│?? │?? ├── lib
│?? │?? └── sbin
│?? └── sbin
└── var
├── cache
├── log
└── run

 

4.元數據和可以更改時間戳的命令touch

文件的數據類型有兩類:元數據:metadata;數據:data。用stat來查看元數據信息。

touch命令:改變時間戳

touch – change file timestamps

touch [OPTION]… FILE…

-c:指定的文件路徑不存在時不予創建

-a:僅修改access time

-m:僅修改modify time

-t STAMP

[[CC]YY]MMDDhhmm[.ss]

 

5.關于別名的命令alias

獲取所有可用別名的定義:

~]#alias

定義別名:

~]#alias NAME=’COMMAND’

注意:僅對當前shell進程有效

撤銷別名:

~]#unalias NAME

 

6.常用命令的綜合用法演示

1:顯示/var目錄下所有以l開頭,以一個小寫字母結尾,且中間出現一位任意字符的文件或目錄; ls -d /var/l?[[:lower:]]

2:顯示/etc目錄下,以任意一位數字開頭,且以非數字結尾的文件或目錄;

ls -d /etc/[0-9]*[^0-9]

3:顯示/etc目錄下,以非字母開頭,后面接一個字母及其它任意長度任意字符的文件或目錄;

ls -d /etc/[^a-z][a-z]*

4、在/tmp目錄下創建以tfile開頭,后跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22。

touch?/tmp/tfile-$(date +%Y-%m-%d-%H-%M-%S)

5.復制/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中。

cp -r /etc/p*[^0-9] /tmp/mytest1

6.復制/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中。

cp -r /etc/*.d /tmp/mytest2

7.復制/etc/目錄下所有以l或m或n開頭,以.conf結尾的文件至/tmp/mytest3目錄中。

cp -r /etc/[lmn]*.conf /tmp/mytest3

 

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/102131

(0)
hanbinghanbing
上一篇 2018-07-01
下一篇 2018-07-01

相關推薦

欧美性久久久久