1. 程式人生 > >linux Shell ----mkdir和touch命令詳解

linux Shell ----mkdir和touch命令詳解

一、建立目錄(mkdir命令詳解)
amosli@amosli-pc:~/learn$ mkdir dir
amosli@amosli-pc:~/learn/dir$ mkdir folder
amosli@amosli-pc:~/learn/dir$ ls
folder

上面的命令中用到了mkdir,即是建立一個目錄,非常常用的一個linux 命令。    該命令建立指定的目錄名,要求建立目錄的使用者在當前目錄中具有寫許可權,並且指定的目錄名不能是當前目錄中已有的目錄.

在命令列內輸入mkdir --help檢視幫助資訊.

[email protected]:~/learn/dir$ mkdir --help
Usage: mkdir
[OPTION]... DIRECTORY... Create the DIRECTORY(ies), if they do not already exist. Mandatory arguments to long options are mandatory for short options too. -m, --mode=MODE set file mode (as in chmod), not a=rwx - umask -p, --parents no error if existing, make parent directories as needed
-v, --verbose print a message for each created directory -Z, --context=CTX set the SELinux security context of each created directory to CTX --help display this help and exit --version output version information and exit Report mkdir bugs to bug-[email protected]
GNU coreutils home page:
<http://www.gnu.org/software/coreutils/> General help using GNU software: <http://www.gnu.org/gethelp/> For complete documentation, run: info coreutils 'mkdir invocation'

由上面提示可以得知    mkdir命令語法為:

mkdir [OPTION]... DIRECTORY...

其中[引數]都是可選,非必選。

選項介紹:
    -m: 對新建目錄設定存取許可權,也可以用chmod    命令設定;

    -p: 可以是一個路徑名稱。此時若路徑中的某些目錄尚不存在,加上此選項後,系統將自動建立好那些尚不存在的目錄,即一次可以建立多個目錄;

    -v:表示列印每一個建立的目錄的資訊。

    -z:從語義來看,是為每個ctx建立目錄時設定SELinux級安全上下文。

    -help,-version一個是顯示幫助資訊,一個是顯示版本號

下面就來舉例說明引數內容:

例項:

如何建立多級目錄?如何在[email protected]:~/learn/dir/folder$目錄下建立/par/child/grand

amosli@amosli-pc:~/learn/dir/folder$ mkdir par
#可不可以直接創那child/grand/目錄?
[email protected]-pc:~/learn/dir/folder$ mkdir par/child/grand
mkdir: cannot create directory `par/child/grand': No such file or directory #答案是不可以
[email protected]:~/learn/dir/folder$ mkdir par/child/
[email protected]-pc:~/learn/dir/folder$ mkdir par/child/grand
#建立完成
[email protected]-pc:~/learn/dir/folder$ cd par/child/grand/
[email protected]-pc:~/learn/dir/folder/par/child/grand$

答案是有的,先刪除剛才建立的目錄:

[email protected]:~/learn/dir/folder$ ls
par
[email protected]-pc:~/learn/dir/folder$ rm -rf *
[email protected]-pc:~/learn/dir/folder$ ls

然後開始一次性建立目錄:

[email protected]:~/learn/dir/folder$ mkdir -p par/child/grand
[email protected]-pc:~/learn/dir/folder$ cd par/child/grand/
[email protected]-pc:~/learn/dir/folder/par/child/grand$

加上-p引數即可。

例項2:

amosli@amosli-pc:~/learn/dir/folder$ rm -rf * #刪除目錄
amosli@amosli-pc:~/learn/dir/folder$ mkdir -v -m 775 par mkdir: created directory `par'
[email protected]:~/learn/dir/folder$ ll
total 12
drwxrwxr-x 3 amosli amosli 4096 12月 26 22:57 ./
drwxrwxr-x 3 amosli amosli 4096 12月 26 22:33 ../
drwxrwxr-x 2 amosli amosli 4096 12月 26 22:57 par/
[email protected]-pc:~/learn/dir/folder$

由上面的例子可以看出    -m 是管理許可權的,-v 是顯示建立資訊的。

-Z引數看了半天沒搞明白到底怎麼用,這裡就跳過了。

二、建立檔案(touch命令詳解)

建立檔案的方式比較多,如上一篇講到的dd 命令,和之前的 echo "hello" > a.txt 類似的>建立檔案,這裡主要介紹touch命令

touch命令主要用來修改檔案時間戳,或者新建一個不存在的檔案

touch --help來看一下幫助資訊:

[email protected]:~/learn/dir/folder/par$ touch --help
Usage: touch [OPTION]... FILE...
Update the access and modification times of each FILE to the current time.

A FILE argument that does not exist is created empty, unless -c or -h
is supplied.

A FILE argument string of - is handled specially and causes touch to
change the times of the file associated with standard output.

Mandatory arguments to long options are mandatory for short options too.
  -a                     change only the access time
  -c, --no-create        do not create any files
  -d, --date=STRING      parse STRING and use it instead of current time
  -f                     (ignored)
  -h, --no-dereference   affect each symbolic link instead of any referenced
                         file (useful only on systems that can change the
                         timestamps of a symlink)
  -m                     change only the modification time
  -r, --reference=FILE   use this file's times instead of current time
  -t STAMP               use [[CC]YY]MMDDhhmm[.ss] instead of current time
  --time=WORD            change the specified time:
                           WORD is access, atime, or use: equivalent to -a
                           WORD is modify or mtime: equivalent to -m
      --help     display this help and exit
      --version  output version information and exit

Note that the -d and -t options accept different time-date formats.

Report touch bugs to bug-[email protected]
GNU coreutils home page: <http://www.gnu.org/software/coreutils/>
General help using GNU software: <http://www.gnu.org/gethelp/>
For complete documentation, run: info coreutils 'touch invocation'

從中可以看出來與mkdir 很類似,touch 的命令語法如下:

touch [OPTION]... FILE...

其中,引數非必選,現在就來看下提供的引數有哪些,各有什麼作用?

  -a 改變檔案的讀取時間記錄。

  -m 改變檔案的修改時間記錄。

  -c 假如目的檔案不存在,不會建立新的檔案。與 --no-create 的效果一樣。
   -h ,不干擾引用 影響每個符號連結,而不是所有參考檔案(只適用於系統的改變一個符號,時間戳)

  -f 不會執行實際操作,是為了與其他 unix 系統的相容性而保留。

  -r 使用參考檔的時間記錄,與 --file 的效果一樣。

  -d 設定時間與日期,可以使用各種不同的格式。

  -t 設定檔案的時間記錄,格式與 date 指令相同。[[CC]YY]MMDDhhmm[.SS],CC為年數中的前兩位,即”世紀數”;YY為年數的後兩位,即某世紀中的年數.如果不給出CC的值,則linux中touch命令引數將把年數CCYY限定在1969--2068之內.MM為月數,DD為天將把年數CCYY限定在1969--2068之內.MM為月數,DD為天數,hh 為小時數(幾點),mm為分鐘數,SS為秒數.此處秒的設定範圍是0--61,這樣可以處理閏秒.這些數字組成的時間是環境變數TZ指定的時區中的一個時間.由於系統的限制,早於1970年1月1日的時間是錯誤的.--no-create 不會建立新檔案。--help 列出幫助資訊--version 列出版本資訊

例項1:

建立檔案a.txt

amosli@amosli-pc:~/learn/dir/folder/par$ touch  a.txt 
amosli@amosli-pc:~/learn/dir/folder/par$ ls -l
total 0
-rw-rw-r-- 1 amosli amosli 0 1226 23:07 a.txt

例項2:

更改a.txt修改時間記錄(-m引數):
amosli@amosli-pc:~/learn/dir/folder/par$touch -m a.txt 
amosli@amosli-pc:~/learn/dir/folder/par$ ls -l
total 0
-rw-rw-r-- 1 amosli amosli 0 1226 23:09 a.txt

例項3:

指定時間來建立檔案(-t引數):

[email protected]:~/learn/dir/folder/par$ touch -t 201812262315.34 b.txt
[email protected]-pc:~/learn/dir/folder/par$ ll
total 8
drwxrwxr-x 2 amosli amosli 4096 12月 26 23:24 ./
drwxrwxr-x 3 amosli amosli 4096 12月 26 22:57 ../
-rw-rw-r-- 1 amosli amosli    0 12月 26 23:19 a.txt-rw-rw-r-- 1 amosli amosli    0 12月 26  2018 b.txt

例項4:

#將 file 的時間記錄改變成與 referencefile 一樣。
touch -r referencefile file
amosli@amosli-pc:~/learn/dir/folder/par$ touch -r b.txt  a.txt 
amosli@amosli-pc:~/learn/dir/folder/par$ ls -l
total 0
-rw-rw-r-- 1 amosli amosli 0 1226  2018 a.txt
-rw-rw-r-- 1 amosli 

相關推薦

linux Shell ----mkdirtouch命令

一、建立目錄(mkdir命令詳解) amosli@amosli-pc:~/learn$ mkdir dir amosli@amosli-pc:~/learn/dir$ mkdir folder amosli@amosli-pc:~/learn/dir$ ls folder

Linux中topfree命令(轉)

機器 負載 選擇 就會 image 的區別 包括 linux中 占用內存 top:命令提供了實時的對系統處理器的狀態監視.它將顯示系統中CPU最“敏感”的任務列表. 該命令可以按CPU使用.內存使用和執行時間對任務進行排序; 而且該命令的很多特性都可以通過交互式命令或者在個

Linux Shell指令碼程式設計 --awk命令

簡單使用: awk :對於檔案中一行行的獨處來執行操作 。 awk -F :'{print $1,$4}'   :使用‘:’來分割這一行,把這一行的第一第四個域打印出來 。    

Linux 中ps top命令

ps 和 top 命令常用來檢視Linux系統程序相關資訊。 ps命令:可以檢視程序的瞬間資訊。 top命令:可以持續的監視程序的資訊。 場景一:如何檢視Linux系統中存在mysql、nginx、tomcat程序? 方法一:輸入命令:ps -ef|grep

Linuxmkdirtouch命令區別

原文地址:http://www.cnblogs.com/zfyouxi/p/5371317.html 一、目的         本文將介紹linux下新建檔案或資料夾、刪除檔案或資料夾命令。        touch能夠新建檔案,mkdir用來新建資料夾。rm用來刪除

mkdirrmdir命令

mkdir 實現在指定位置建立以指定的名稱命名的資料夾或目錄。要建立資料夾或目錄的使用者必須對所建立的資料夾的父資料夾具有寫許可權。並且,所建立的資料夾(目錄)不能與其父目錄(即父資料夾)中的檔名重名(區分大小寫)。 命令引數: -m:設定許可權<模式>; -p

hbase shell基礎常用命令(轉)

hbase提供了一個shell的終端給使用者互動。使用命令hbase shell進入命令介面。通過執行 help可以看到命令的幫助資訊。 以網上的一個學生成績表的例子來演示hbase的用法。 name grad course math art Tom 5 97 87 Jim 4 8

Linux中topfree命令

top:命令提供了實時的對系統處理器的狀態監視.它將顯示系統中CPU最“敏感”的任務列表. 該命令可以按CPU使用.記憶體使用和執行時間對任務進行排序; 而且該命令的很多特性都可以通過互動式命令或者在個人定製檔案中進行設定.  top - 01:06:48 up  

linux的dfdu命令

df命令詳細用法 a:顯示全部的檔案系統和各分割區的磁碟使用情形  i:顯示i -nodes的使用量  k:大小用k來表示 (預設值)  t:顯示某一個檔案系統的所有分割區磁碟使用量  x:顯示不是某一個檔案系統的所有分割區磁碟使用量  T:顯示每個分割區所屬的檔案系統名

Linux touch命令

for mtime inux each class abs idt --date change touch命令有兩個功能: 一是用於把已存在文件的時間標簽更新為系統當前的時間(默認方式),它們的數據將原封不動地保留下來; 二是用來創建新的空文件。 touch常見命令參數-

linux findlocate命令

linux中find命令優點是能實現精確查詢,缺點對系統資源耗費大。 一:檔案查詢命令,按檔名稱查詢. 官方要求檔名需要加雙引號,保證搜尋的完整性。 find 目錄 -iname " init "(不區分大小寫) find 目錄 -name “init

Linux系統中定時任務croncrontab命令與配置規則說明

cron機制         cron可以讓系統在指定的時間,去執行某個指定的工作,我們可以使用crontab指令來管理cron機制 crontab引數         -u:這個引數可以讓我們去編輯其他人的crontab,如果沒有加上這個引數的話就會開啟自己的crontab

Linux(11)RedHat7 基本命令九-touch命令

導言   前一篇博文介紹了目錄,並且其實開篇導言,介紹了linux將一切看成是檔案,所以對於本次博文,講解的touch命令。本命令用於建立檔案而準備的。【感覺換個字型會不會看得更好點?】 touch命

Linux系統中 mkdir touch 命令區別

touch 能夠新建檔案,而 mkdir 是用來新建資料夾的; 1,mkdir 命令 結構:mkdir [options] dirname - p:遞迴建立資料夾 - mmode:新建資料夾

Linux基礎知識之chattrlsattr命令

有時候你發現通過root使用者都不能修改某個檔案,大部分原因是曾經用chattr命令鎖定該檔案了。chattr命令的作用很大,其中一些功能是由Linux核心版本來支援的,不過現在生產絕大部分跑的linux系統都是2.6以上核心。通過chattr命令修改屬效能夠提高系統的安全性,但是它並不適合所有的目

Linux命令列——touch命令

1.命令功能   touch命令用於建立檔案或修改檔案/目錄的時間戳(瞭解時間戳,可以檢視Linux命令列——stat命令詳解)。 2.語法格式   touch [option] file

檢視linux下登陸使用者的行為資訊—wwho命令

檢視使用者的作業系統管理員若想知道某一時刻使用者的行為,只需要輸入命令w 即可,在SHELL終端中輸入如下命令: [[email protected] ~]# w 可以看到執行w命令及顯示結果。 命令資訊含義上述顯示的資訊分別表示如下: 第一行顯示系統的彙

Linux 檔案管理 : touch 命令

[email protected]:<~>$ stat aaa.txt   File: 'aaa.txt'  Size: 50              Blocks: 8          IO Block: 4096   regular fileDevice: 900h/2304d

Linuxtouch命令

在Linux中,touch命令主要是用於新建一個不存在的檔案或者是對於檔案的時間戳進行修改; (1)使用touch命令新建一個不存在的檔案 使用touch新建了一個檔案,然後使用ls -a進行檔案目

linux touch 命令

功能說明:改變檔案或目錄時間。 語  法:touch [-acfm][-d ][-r ][-t ][--help]   [--version][檔案或目錄...] 或 touch [-acfm][--help][--version][日期時間][檔案或目錄...] 補充說明: