萬盛學電腦網

 萬盛學電腦網 >> 服務器教程 >> Linux下用bash命令執行名稱中帶有“(”符號的目錄注意事項

Linux下用bash命令執行名稱中帶有“(”符號的目錄注意事項

   ***********************************************聲明************************************************

  原創作品,出自 “深藍的blog” 博客,歡迎轉載,轉載時請務必注明出處,否則追究版權法律責任。

  表述有錯誤之處,請您留言或郵件([email protected])指明,不勝感激。

  本文轉載必須保留此處:http://blog.csdn.net/huangyanlong/article/details/39214295

  深藍的blog:http://blog.csdn.net/huangyanlong

  ****************************************************************************************************

  1. 無意中的發現:對“(”符號的轉義

  名稱帶有“(”符號的目錄,在Linux系統下是無法直接對其執行操作的,如果要直接對其操作,需要在名稱中加入轉義符,如下舉例

  [root@hyldb soft]# ls --查看文件,發現有一個rpm(CentOS5.6 +11g)目錄

  new p13390677_112040_Linux-x86-64_2of7.zip

  p13390677_112040_Linux-x86-64_1of7.zip rpm(CentOS5.6 +11g)

  [root@hyldb soft]# cd rpm(CentOS5.6 +11g) --直接進入目錄,提示錯誤

  -bash: syntax error near unexpected token `('

  [root@hyldb soft]# cd rpm/(CentOS5.6/ +11g/) --修改格式後,進入成功

  [root@hyldb rpm(CentOS5.6 +11g)]#

  如果想要刪除操作,當然也需要加入轉義符,如下例舉:

  [root@hyldb soft]# rm -rf rpm/(CentOS5.6/ +11g/)/

  2. 空格的轉義:轉義中存在的空格處理

  其中注意一點,如果創建目錄時存在類似“+”符號與空格相連,需要在其“空格”前加轉義符“/”,否則會被拆分成多個目錄,舉例如下:

  沒有空格的情況下創建目錄:(1+2)

  [root@hyldb soft]# mkdir /(1+2/)

  [root@hyldb soft]# ls --查看發現目錄創建成功

  (1+2) new p13390677_112040_Linux-x86-64_1of7.zip p13390677_112040_Linux-x86-64_2of7.zip

  有空格的情況下創建目錄:(1 + 2)

  [root@hyldb soft]# mkdir /(1 + 2/)

  [root@hyldb soft]# ls --查看發現,由於格式沒有注意,默認創建了三個目錄,分別為:“+”、“(1”、“2)”這三個目錄

  + (1+2) new p13390677_112040_Linux-x86-64_2of7.zip

  (1 2) p13390677_112040_Linux-x86-64_1of7.zip

  正確的創建“(1 + 2)”目錄的格式應該為如下:

  [root@hyldb soft]# mkdir /(1/ +/ 2/)

  [root@hyldb soft]# ls --查看發現,“(1 + 2)”目錄創建成功

  (1 + 2) new p13390677_112040_Linux-x86-64_1of7.zip p13390677_112040_Linux-x86-64_2of7.zip

  小結:如果目錄名稱中存在空格,需要對空格單獨轉義,否則會被拆分成單個的目錄

  3. 後記:刪除掉實驗目錄

  [root@hyldb soft]# ls

  + (1 + 2) new

  (1 (1+2) p13390677_112040_Linux-x86-64_1of7.zip

  (1 + 2) p13390677_112040_Linux-x86-64_2of7.zip

  [root@hyldb soft]# rm -rf + /(1/ +/ 2/) /(1 /(1/ + 2/)

  [root@hyldb soft]# ls

  (1+2) new p13390677_112040_Linux-x86-64_1of7.zip p13390677_112040_Linux-x86-64_2of7.zip

  [root@hyldb soft]# rm -rf /(1+2/)

  [root@hyldb soft]# ls

  new p13390677_112040_Linux-x86-64_1of7.zip p13390677_112040_Linux-x86-64_2of7.zip

  小細節,簡而記之

  ***********************************************聲明************************************************

  原創作品,出自 “深藍的blog” 博客,歡迎轉載,轉載時請務必注明出處,否則追究版權法律責任。

  表述有錯誤之處,請您留言或郵件([email protected])指明,不勝感激。

  本文轉載必須保留此處:http://blog.csdn.net/huangyanlong/article/details/39214295

  深藍的blog:http://blog.csdn.net/huangyanlong

  ****************************************************************************************************

copyright © 萬盛學電腦網 all rights reserved