Linux basics–part2

一、Linux上的文件管理類命令,及常用的使用方法

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

常用選項:

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

ls [OPTION]… [FILE]…

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

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

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

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

-d:查看目錄自身而非其內部的文件列表;

-r: reverse, 逆序顯示;

-R: recursive,遞歸顯示;

2.pwd:printing working directory 顯示工作目錄

3.mkdir:make directories

常用選項:

mkdir [OPTION]… DIRECTORY…

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

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

-m MODE:直接給定權限;

4.rmdir:remove empty directories

常用選項:

rmdir [OPTION]… DIRECTORY…

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

-v: 顯示過程;

5.touch:change file timestamps

常用選項:

touch [OPTION]… FILE…

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

-a: 僅修改access time;

-m:僅修改modify time;

-t :使用指定的時間值作為指定文件相應時間戳記的新值

6.cp:復制文件和目錄

常用選項:

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

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

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

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

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

7.mv:移動 (改名) 文件

常用選項:

-i:交互式;

-f:–force覆蓋前永不提示

8.rm:remove

常用選項:

-i:interactive

-f:force

-r: recursive

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

危險操作:rm -rf /*

9.查看文件命令

cat:concatenate文件文本查看工具;

tac:文件文本查看工具

more:more FILE 特點:翻屏至文件尾部后自動退出;

less:同more命令

head:查看文件的前n行  如:~]#  FILE -n #

tail:查看文件的后n行  如:~]#FILE-n #

10.ln:文件之間建立連接

ln -s /etc/php.ini php.soft 生成軟鏈接文件

ln /etc/php.ini php.hard 生成硬鏈接文件

11.du -sh / 統計根目錄的大小

12.file:確定文件類型

二、bash的工作特性之命令執行狀態返回值和命令行展開所涉及的內容及其示例演示

1.命令執行狀態返回值

命令執行的狀態結果:

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

成功:0

失?。?-255

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

例如:

[root@ronny1 ~]# ll /tmp/issue

-rw-r–r–. 1 root root 0 7月  13 22:55 /tmp/issue

[root@ronny1 ~]# echo $?

0

[root@ronny1 ~]# ll /tmp/iss

ls: 無法訪問/tmp/iss: 沒有那個文件或目錄

[root@ronny1 ~]# echo $?

2

2.命令行展開所涉及的內容

命令行展開

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

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

例如:

(1)

[root@ronny1 tmp]# pwd

/tmp

[root@ronny1 tmp]# cd ~

[root@ronny1 ~]# pwd

/root

[root@ronny1 ~]#

(2)

[root@ronny1 ~]# ll /tmp/x

總用量 4

-rw-r–r–. 1 root root 215 7月  14 15:03 issue

drwxr-xr-x. 2 root root  6 7月  12 15:45 y2

[root@ronny1 ~]# mkdir -pv /tmp/x/{a,b}_{c,d}

mkdir: 已創建目錄 “/tmp/x/a_c”

mkdir: 已創建目錄 “/tmp/x/a_d”

mkdir: 已創建目錄 “/tmp/x/b_c”

mkdir: 已創建目錄 “/tmp/x/b_d”

[root@ronny1 ~]# ll /tmp/x

總用量 4

drwxr-xr-x. 2 root root  6 7月  14 22:28 a_c

drwxr-xr-x. 2 root root  6 7月  14 22:28 a_d

drwxr-xr-x. 2 root root  6 7月  14 22:28 b_c

drwxr-xr-x. 2 root root  6 7月  14 22:28 b_d

-rw-r–r–. 1 root root 215 7月  14 15:03 issue

drwxr-xr-x. 2 root root  6 7月  12 15:45 y2

[root@ronny1 ~]#

三、使用命令行展開功能來完成以下練習

1.創建/tmp目錄下的:a_c, a_d, b_c, b_d

[root@ronny1 ~]# mkdir -pv /tmp/{a,b}_{c,d}

mkdir: 已創建目錄 “/tmp/a_c”

mkdir: 已創建目錄 “/tmp/a_d”

mkdir: 已創建目錄 “/tmp/b_c”

mkdir: 已創建目錄 “/tmp/b_d”

2.創建/tmp/mylinux目錄下的:

[root@ronny1 ~]# mkdir -pv /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-scripts},lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var/{lock,log,run}}

mkdir: 已創建目錄 “/tmp/mylinux”

mkdir: 已創建目錄 “/tmp/mylinux/bin”

mkdir: 已創建目錄 “/tmp/mylinux/boot”

mkdir: 已創建目錄 “/tmp/mylinux/boot/grub”

mkdir: 已創建目錄 “/tmp/mylinux/dev”

mkdir: 已創建目錄 “/tmp/mylinux/etc”

mkdir: 已創建目錄 “/tmp/mylinux/etc/rc.d”

mkdir: 已創建目錄 “/tmp/mylinux/etc/rc.d/init.d”

mkdir: 已創建目錄 “/tmp/mylinux/etc/sysconfig”

mkdir: 已創建目錄 “/tmp/mylinux/etc/sysconfig/network-scripts”

mkdir: 已創建目錄 “/tmp/mylinux/lib”

mkdir: 已創建目錄 “/tmp/mylinux/lib/modules”

mkdir: 已創建目錄 “/tmp/mylinux/lib64”

mkdir: 已創建目錄 “/tmp/mylinux/proc”

mkdir: 已創建目錄 “/tmp/mylinux/sbin”

mkdir: 已創建目錄 “/tmp/mylinux/sys”

mkdir: 已創建目錄 “/tmp/mylinux/tmp”

mkdir: 已創建目錄 “/tmp/mylinux/usr”

mkdir: 已創建目錄 “/tmp/mylinux/usr/local”

mkdir: 已創建目錄 “/tmp/mylinux/usr/local/bin”

mkdir: 已創建目錄 “/tmp/mylinux/usr/local/sbin”

mkdir: 已創建目錄 “/tmp/mylinux/var”

mkdir: 已創建目錄 “/tmp/mylinux/var/lock”

mkdir: 已創建目錄 “/tmp/mylinux/var/log”

mkdir: 已創建目錄 “/tmp/mylinux/var/run”

[root@ronny1 ~]# tree /tmp/mylinux/

/tmp/mylinux/

├── bin

├── boot

│   └── grub

├── dev

├── etc

│   ├── rc.d

│   │   └── init.d

│   └── sysconfig

│      └── network-scripts

├── lib

│   └── modules

├── lib64

├── proc

├── sbin

├── sys

├── tmp

├── usr

│   └── local

│      ├── bin

│      └── sbin

└── var

├── lock

├── log

└── run

24 directories, 0 files

四、文件的元數據信息有哪些,分別表示什么含義,如何查看?如何修改文件的時間戳信息

1.文件數據是由2個部分組成:

(1).數據-data

(2).元數據-metadata(當你用ls -l 命令 或者ll命令時,列出的信息就是元數據。

2.使用stat查看,如下:

[root@localhost ~]# stat /tmp/

File: ‘/tmp/’

Size: 4096            Blocks: 8          IO Block: 4096  directory

Device: fd00h/64768d    Inode: 67160136    Links: 17

Access: (1777/drwxrwxrwt)  Uid: (    0/    root)  Gid: (    0/    root)

Context: system_u:object_r:tmp_t:s0

Access: 2017-07-14 02:21:49.746629085 -0400

Modify: 2017-07-14 11:05:21.984956234 -0400

Change: 2017-07-14 11:05:21.984956234 -0400

stat命令列出的元數據信息:

size   表示文件的理論長度,單位是字節

Block 與 IO Block 的乘積是文件所占的實際大小,在linux下文件所占的空間分配,最小的單位是塊(Bolck),而塊的大小與塊的數量,決定了文件實際占用的磁盤空間.

Device 表示內核對該設備的編號

Inode  是內核為每一個文件分配的標志

Links   表示文件名指向的inode節點的數量

Access:(0755/-rwxr-xr-x) 表示了訪問權限,以及文件類型

uid:     表示了文件所有者,包括了系統為所有者分配的數值id

gid:     表示了文件組,包括了系統為組分配的數值id

接下來有三個時間通常被叫做文件的Access, Modify, Change:

文件時間信息

縮寫全稱名稱描述

eaccess time訪問時間文件數據每次被閱讀后所記錄的時間

modify time修改時間文件內容數據被修改后記錄的時間

change time改變時間文件的inode節點信息被改變后記錄的時間

3.touch命令:

touch – change file timestamps

touch [OPTION]… FILE…

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

-a: 僅修改access time;

-m:僅修改modify time;

-t :使用指定的時間值作為指定文件相應時間戳記的新值

原創文章,作者:N27_ronny,如若轉載,請注明出處:http://www.www58058.com/80448

(0)
N27_ronnyN27_ronny
上一篇 2017-07-14 21:30
下一篇 2017-07-15 08:09

相關推薦

  • 畢業即高薪只是別人家的好事嗎?

    1 畢業即高薪?運氣?夢想?還是噓頭?  同學們,你還在擔心畢業后不好找工作嗎,畢業即高薪只是別人家的好事嗎?馬哥linux又一名在校生學員畢業即20w+高薪名企,你還在等什么呢? 真的只是夢想么?還是只存在于別人家的公司? 越來越多的在校大學生憑著強烈的上進心踴躍的加入了馬哥linux的學習陣營,這名研究生同學在研究生畢業的同時也從馬哥linux…

    2015-09-06
  • 基于NFS實現WordPress

    實驗內容: (1)主機IP nfs server IP :192.168.29.120 nfs server IP: 192.168.29.110 (2)要求 nfs server共享/data/web/ 、/data/mysql 兩個目錄 nfs client掛載nfs server共享的/data/web/的文件系統至/var/www/html;部署wo…

    2017-06-13
  • 2016 10 19 第5天作業

    20161019第5天作業 軟鏈接和硬鏈接的區別 硬鏈接 ①硬鏈接文件不能跨分區創建 ②一個硬鏈接文件的刪除不影響其他鏈接的訪問 ③鏈接文件指向的源文件被刪除后,鏈接文件還能正常訪問源文件的數據 ④硬鏈接的文件類型是 –  普通文件 ⑤硬鏈接和源文件的屬性(大小,權限,時間戳,Inode號)相同 ⑥硬鏈接不能對目錄創建 ⑦創建硬鏈接會增…

    Linux干貨 2016-10-20
  • 建立yum源及yum命令的使用

    一、什么是YUM     YUM的全稱為 Yellowdog Update Modifier,其主要目的是為了解決RPM包安裝時的依賴關系的問題。YUM只是一個用于軟件安裝的前端工具,其主要的服務對象還是RPM軟件包。     YUM采用C/S架構,即客戶端與服務器的模…

    Linux干貨 2015-05-11
  • Net22-第一周作業-linux基礎知識

    1、描述計算機的組成及其功能。    計算機硬件由五大部件組成,分別是運算器、控制器、存儲器、輸入和輸出設備組成。 其中,運算器和控制器合稱為cpu,接受指令,加工數據。 存儲器又分為內存和外存(硬盤、U盤等等),這里指的是內存,給cpu提供數據和指令。 輸入設備對數據進行輸入,如鼠標,鍵盤等。 輸出設備對計算結果進行顯示或者打印等,如顯…

    Linux干貨 2016-08-22
  • 馬哥教育網絡班22期+第15周課程練習

    1、總結sed和awk的詳細用法; sed [OPTION]…  'script'  [input-file] … script: 地址定界編輯命令 常用選項: -n:不輸出模式空間中的內容至屏幕; -e script, –expression=sc…

    Linux干貨 2016-12-14

評論列表(1條)

  • 馬哥教育
    馬哥教育 2017-07-22 21:34

    個人非常喜歡這種風格的文章,內容也很棒,再接再勵。

欧美性久久久久