shell獲取當前工作目錄絕對路徑
unix系統 賦值檔案及資料夾
shell路徑變數出現空格時的處理方法
curret_dir=$(cd "$(dirname "$0")";pwd)
複製檔案到資料夾
例如;在/test目錄下新建test1和test2兩個子資料夾。 假設複製原始檔test1下的test01檔案,目標目錄為test2
cp /test/test1/test01 /test/test2
複製資料夾到資料夾
例如;在/test目錄下新建test1和test2兩個子資料夾。 假設複製原始檔test1資料夾,目標目錄為test2
cp -r /test/test1 /test/test2
複製資料夾內所有檔案到資料夾
cp -r /test/test1/. /test/test2
當路徑變數包含空格時,直接使用會出錯
$ dir="/home/test/desktop/中文 空格1/english space2/混合——1_1 空 格 3"
例如,直接cd到這個有空格的路徑變數是不行的
cheng@cheng:~/desktop$ cd $dir
bash: cd: 引數太多
cd 後面的path變數用引號引起來就好了
這樣做的原理是加了雙引號後,shell會把引號內的內容當作乙個整體來處理,這樣路徑中的空格就不會被當作分隔符了cheng@cheng:~/desktop$ cd "$dir"
cheng@cheng:~/desktop/中文 空格1/english space2/混合——1_1 空 格 3$
注意:一定要在使用的時候加,不要在變數賦值的時候加,不然是無效的
編寫Shell指令碼
獲取變數的方式 1 echo path 2 echo 3 echo path 引數的提取 引數的個數 n 第n個引數 0 當前指令碼名稱 取出所有引數 shift 引數左移 執行過程 2 編寫指令碼內容 單獨講解 3 新增執行許可權 chmod a x abc.sh 4 當前目錄執行 abc.sh ...
Shell 指令碼編寫
shell 指令碼與 windows dos 下的批處理相似,也就是用各類命令預先放入到乙個檔案中,方便一次性執行的乙個程式檔案,主要是方便管理員進行設定或者管理用的。但是它比 windows 下的批處理更強大,比用其他程式設計程式編輯的程式效率更高,它使用了 linux unix 下的命令。方法一...
shell指令碼編寫
echo echo n不換行輸出,echo e會處理特殊字元,比如有 n則會換行 printf 不自動換行輸出 print 自動換行輸出 傳遞到指令碼的引數個數 以乙個單字串顯示所有向指令碼傳遞的引數。指令碼執行的當前程序id號 後台執行的最後乙個程序的id號 與 相同,但是使用時加引號,並在引號中...