一、使用shell擴展匹配文件名:
bash通配功能通常被稱爲“通配符”。常見的元字符和模式類。
模式 | 匹配項 |
* | 由零或任意額字符組成的任何字符串。 |
? | 任何一個字符。 |
[abc..] | 括起的類(位於兩個方括號之間)中的任何一個字符。 |
【!abc..】 | 不在括起的類中的任何一個字符。 |
【^abc..】 | 同上 |
[[]:alpha:] | 任何字母字符。 |
[[:lower:]] | 任何小寫字符 |
[[]:upper:] | 任何大寫字符 |
[[:alnum:]] | 任何字母字符或數字。 |
[[:punct:]] | 出空格和字母數字以外的任何可打印字符。 |
[[;digit:]] | 從0到9的任何單個數字。 |
[[:space:]] | 任何一個空白字符。這可能包括製表符、換行符、回車符、換頁符或空格。 |
(~)波形符可匹配當前用戶的主目錄。
大括號擴展用於生成任意字符串。大括號包含字符串的逗號分隔列表或順序表達式。結果包含大括號定義之前或之後的文本。大括號可以互相嵌套。例子:
echo {Sunday,Monday,Tuesday,Wednesday}.log
結果: Sunday.log Monday.log Tuesday.log Wednesday.log
命令替換:允許命令的輸出替換命令行上的命令本身。命令在括號中,且括號前面有復活$是,會發生命令替換。 例子:echo Today is $(date +%A)。
防止參數被擴展:
反斜槓(\)是bash shell 中的轉義字符,可防止緊隨其後的字符被擴展。
如:echo The value of \$HOME is your home dir.
結果:The value of $HOME is your home dirctory.
使用雙引號可以阻止通配和shell擴展,但允許命令和變量替換。
使用單引號則可以按字面翻譯所有文本。
二、在redhate linux中獲取幫助
man命令。redhat系統中通常可用的一個文檔源是系統手冊頁,稱爲man page。,要訪問具體的man page ,使用man topic。
閱讀info文檔:
pinfo 命令,啓動info文檔查看器。
創建、查看和編輯文本文件:
文件描述符(通道)
編號 | 通道名稱 | 描述 | 默認鏈接 | 用法 |
0 | stdin | 標準輸入 | 鍵盤 | 僅讀寫 |
1 | stdout | 標準輸出 | 終端 | 僅寫入 |
2 | stderr | 標準錯誤 | 終端 | 僅寫入 |
3+ | filename | 其他文件 | 無 | 讀取和/或寫入 |
輸出重定向操作符
用法 | 說明 |
>file | 重定向stdout以覆蓋文件 |
>>file | 重定向stdout以附加到文件 |
2>file | 重定向stderr以覆蓋文件 |
2>/dev/null | 將stderr錯誤消息重定向到/dev/null,從而將它丟棄 |
>file 2>&1 | 重定向stdout和stderr以覆蓋同一個文件 |
&>file | |
>>file 2>&1 | 重定向stdout和stderr以附加到同一個文件。 |
&>>file |
構建管道:
管道是一個或多個命令的序列,用豎線字符(|)分隔。管道將第一個命令的標準輸出連接到下一個命令的標準輸入。
管道、重定向和tee命令:
如果在管道的中間使用了輸出重定向,則輸出將轉至文件。tee命令則將管道中的標準輸入複製到標準輸出中,並且還將標準輸出重定向到指定爲命令參數的文件。
例如,將ls命令的輸出重定向到文件,並且將輸出傳遞到less以便在終端上一次一屏的方式顯示。ls -l | tee /tmp/saved-output | less
如果在管道末尾使用了tee ,則可以保存命令的最終輸出並且同時輸出到終端。
例子:ls -t | head -n 10 | tee /tmp/ten-last-changed-files
可通過管道來重定向標準錯誤, 但是不能使用合併重定向運算符(&>和&>>)執行此操作。以下是通過管道重定向標準輸出和標準錯誤的正確方法:
find -name / passwd 2>&1 | less
使用vim編輯文件:
vim filename 文件已存在則打開,不存在則新建。
i鍵 進入插入模式,其中鍵入的所有文本將變爲文件內容。按Esc返回命令模式。
按v鍵進入可是模式,可以選擇多個字符進行文本操作。使用shift+V選擇多行,使用ctrl +v可選擇文本塊。 用於進入可視模式的擊鍵操作(v、 shift+v 或ctrl +v)也可用於退出。
按:鍵啓動擴展命令模式,可以執行的任務包括寫入文件(進行保存),以及退出vim編輯器。
u鍵可撤銷最近的編輯,x鍵可刪除單個字符。:w保存。 : wq 保存退出。 q! 強制退出不保存。 y鍵複製 ,p鍵粘貼。
更改shell變量:
set命令列出當前設置的所有shell變量。