第二周博客作業

一、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示

Linux文件管理類命令有cp、mv、rm

1、cp命令:copy files and directories

使用方法:

  • 單源復制
    cp [OPTION]… [-T] SOURCE DEST
    1)如果DEST不存在,則事先創建此文件,并復制源文件的數據流至DEST中
    2)如果DEST存在,DEST是非目錄文件,則覆蓋目標文件;如果DEST是目錄文件,則現在DEST目錄下創建一個與源文件同名的文件,并復制其數據流。

  • 多源復制
    cp [OPTION]… SOURCE… DIRECTORY
    cp [OPTION]… -t DIRECTORY SOURCE…
    如果DEST不存在,提示錯誤
    如果DEST是目錄文件,分別復制每個文件至目錄中去,并保持原名

常用選項及示例:

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

[root@localhost ~]# cp -i /etc/issue /tmp/issue
cp:是否覆蓋"/tmp/issue"? y
[root@localhost ~]# ls -l /tmp

-f:強制覆蓋目標文件
-r, -R:遞歸復制目錄
-d,復制符號鏈接文件本身,而非其指向的源文件

[root@localhost ~]# ls -l /etc/system-release
lrwxrwxrwx.  1 root root       14 11月  8 09:07 system-release -> centos-release
[root@localhost ~]# cp /etc/system-release /tmp
[root@localhost ~]# ls -l /tmp/system-release
-rw-r--r--  1 root    root      38 12月 11 02:04 system-release1-----實際復制了源文件
[root@localhost ~]# cp -d /etc/system-release /tmp/
cp:是否覆蓋"/tmp/system-release"? y
[root@localhost ~]# ls -l /tmp
[root@localhost ~]# ls -l /etc/system-releasel
rwxrwxrwx  1 root    root      14 12月 11 02:05 system-release -> centos-release-----復制符號鏈接文件

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

2、mv命令:move (rename) files

使用方法:
mv [OPTION]… [-T] SOURCE DEST

mv [OPTION]… SOURCE… DIRECTORY

mv [OPTION]… -t DIRECTORY SOURCE…

常用選項:

-i:交互式mv

-f:do not prompt before overwriting

3、rm命令:remove files or directories

使用方法:

rm [OPTION]… FILE…

常用選項:
-i:交互式rm

-f:強制性刪除并不提醒

-r,–recursive:刪除目錄

注意:所有不用的文件建議不要刪除,而是移動至某個專用目錄(模擬回收站)

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

  • 命令執行狀態返回值

命令執行完成之后,其狀態返回值保存于bash的特殊變量$?。通過輸入enco $?,就知道命令執行后的狀態。
成功顯示為0,失敗顯示為1~255

示例:

[root@localhost ~]# cat /etc/issue\S
Kernel \r on an \m

[root@localhost ~]# echo $?
[root@localhost ~]# catt /etc/issue
-bash: catt: 未找到命令
[root@localhost ~]# echo $?
127
[root@localhost ~]# cat /etc/issue123
cat: /etc/issue123: 沒有那個文件或目錄
[root@localhost ~]# echo $?
1
  • 命令行展開:需要了解的是~和{}用法

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

示例:

[root@localhost tmp]# cd /home
[root@localhost ~]# cd ~Yu
[root@localhost Yu]# pwd/home/Yu-----------------直接可達家目錄

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

示例:

創建目錄 /var/x,/var/y
[root@localhost ~]# mkdir /var/{x,y}
[root@localhost ~]# ls -d /var/x /var/y
/var/x  /var/y

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

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

[Yu@localhost ~]$ cd /tmp
[Yu@localhost tmp]$ mkdir -v {a,c}_{b,d}
mkdir: 已創建目錄 "a_b"
mkdir: 已創建目錄 "a_d"
mkdir: 已創建目錄 "c_b"
mkdir: 已創建目錄 "c_d"

(2)創建/tmp/mylinux目錄下的:

[root@localhost ~]# 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}}
[root@localhost ~]# 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

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

1)任何文件系統中的數據分為數據和元數據。數據是指普通文件中的實際數據,而元數據指用來描述一個文件的特征的系統數據。

元數據包括文件大小類型、文件權限、屬主屬組、文件數據塊的分布信息(inode…)以及相關時間戳等。查看文件元數據信息,可用stat命令:

stat – display file or file system status

示例:

[root@localhost ~]# stat /etc/issueFile: ‘/etc/issue’
Size: 23            Blocks: 8          IO Block: 4096   regular file
Device: fd00h/64768d    Inode: 201327467   Links: 1Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2016-12-12 06:56:41.892009669 +0800
Modify: 2015-12-09 17:59:15.000000000 +0800
Change: 2016-11-08 09:07:16.867977395 +0800
Birth: -

2)修改文件的時間戳信息,可用touch命令

touch- change file timestamps

使用方法:

touch [OPTION]... FILE...
OPTION:
-c:指定的文件路徑不存在時不予創建,只更改change time-a:僅修改access time,同時連change time也跟隨修改
-m:僅修改modify time,同時連change time也跟隨修改
-t:使用[[CC]YY]MMDDhhmm[.ss]指定時間,代替現在的時間

五、如何定義一個命令的別名,如何在命令中引用另一個命令的執行結果?

1)定義一個命令的別名

示例:

[root@localhost ~]# alias cls='clear'
[root@localhost ~]# alias
alias cls='clear'
alias cp='cp -i'
...
Remark:僅對當前shell進程有效

2)命令中引用另一個命令的執行結果的方法

$(COMMAND)或`COMMAND`(注意此是反引號)

示例:

[root@localhost ~]# ls -l $(cat /etc/shells)-rwxr-xr-x. 1 root root 960376 Nov 20  2015 /bin/bash
lrwxrwxrwx. 1 root root      4 Nov  8 09:15 /bin/csh -> tcsh
lrwxrwxrwx. 1 root root      4 Nov  8 09:07 /bin/sh -> bash
-rwxr-xr-x. 1 root root 404480 Nov 20  2015 /bin/tcsh
-rwxr-xr-x. 1 root root   7168 Nov 20  2015 /sbin/nologin
-rwxr-xr-x. 1 root root 960376 Nov 20  2015 /usr/bin/bash
lrwxrwxrwx. 1 root root      4 Nov  8 09:07 /usr/bin/sh -> bash
-rwxr-xr-x. 1 root root   7168 Nov 20  2015 /usr/sbin/nologin

六、顯示/var目錄下所有以1開頭,以一個小寫字母結尾,且中間至少出現一位數字(可以有其它字符)的文件或目錄

[root@localhost ~]# touch /var/1ui9b
[root@localhost ~]# ls -l /var/1*[0-9]*[a-z]
-rw-r--r-- 1 root root 0 Dec 12 23:20 /var/1ui9b

七、顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄

[root@localhost ~]# touch /etc/3ious
[root@localhost ~]# ls -l /etc/[0-9]*[^0-9]
-rw-r--r-- 1 root root 0 Dec 12 23:42 /etc/3ious

八、顯示/etc目錄下,以非字母開頭,后面跟了一個字母及其它任意長度任意字符的文件或目錄。

[root@localhost ~]# ls -l /etc/[^a-z][a-z]*
-rw-r--r-- 1 root root 0 Dec 12 23:42 /etc/3ious

九、在/tmp目錄下創建以tfile開頭,后跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22

[root@localhost ~]# touch /tmp/tfile-$(date +%F-%H-%M-%S)
[root@localhost ~]# ls -l /tmp/
-rw-r--r-- 1 root    root     0 Dec 13 00:56 tfile-2016-12-13-00-56-49

十、復制/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中。

[root@localhost ~]# cp -r /etc/p*[^0-9] /tmp/mytest1

十一、復制/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中。

[root@localhost ~]# cp -r /etc/*.d /tmp/mytest2

十二、復制/etc/目錄下所有以l或m或n開頭,以.conf結尾的文件至/tmp/mytest3目錄中

[root@localhost ~]# cp -r /etc/[lmn]*.conf /tmp/mytest3

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

(0)
N25_PierceN25_Pierce
上一篇 2016-12-13 20:57
下一篇 2016-12-13 21:17

相關推薦

  • N-28作業第一周

    N-28作業第一周小結:以前看存儲視頻里面講存儲架構里不清楚的部分居然開始清晰?;A命令需要多花時間熟悉。

    2017-12-05
  • Linux系統程序包的安裝–RPM

           我們知道在操作系統上使用的程序都是有程序員通過開發工具得來的,程序員直接編寫的純文本的文件,我們稱之為源代碼,由于計算機識別的是二進制程序,因此在完成源代碼編寫之后,就必須要經過編譯,使之成為操作系統可以“看得懂”的二進制程序,這里的編譯是通過編譯器來進行的操作,編譯器的功能就是將源代碼程序“轉換”為二進…

    2017-04-23
  • N25_第十三周作業

    1、建立samba共享,共享目錄為/data,要求:(描述完整的過程)  1)共享名為shared,工作組為magedu;  2)添加組develop,添加用戶gentoo,centos和ubuntu,其中gentoo和centos以develop為附加組,ubuntu不屬于develop組;密碼均為用戶名;  3)添加samb…

    Linux干貨 2017-03-06
  • Linux中的 德·摩根定律

    Linux中的 德·摩根定律 §·德·摩根定律介紹 ※概念 在命題邏輯和邏輯代數中,德·摩根定律(或稱德·摩根定理)是關于命題邏輯規律的一對法則。 奧古斯塔斯·德·摩根首先發現了在命題邏輯中存在著下面這些關系: 非(P 且 Q) = (非 P) 或 (非 Q) 非(P 或 Q) = (非 P) 且 (非 Q) 德·摩根定律在數理…

    Linux干貨 2016-08-15
  • FHS文件系統介紹及各目錄功能說明

    作者:M21-陸東貴 FHS文件系統介紹及各目錄功能說明 FHS簡介 Filesystem Hierarchy Standard(文件系統目錄標準)的縮寫,多數Linux版本采用這種文件組織形式,類似于Windows操作系統中c盤的文件目錄,FHS采用樹形結構組織文件。FHS定義了系統中每個區域的用途、所需要的最小構成的文件和目錄,同時還給出了例外處理與矛盾…

    Linux干貨 2016-10-18
  • Mariadb基于ssl的主從復制

    Mariadb基于ssl的主從復制 一、前言 備份數據庫是生產環境中的首要任務,重中之重。一般配置中mariadb的主從傳輸是明文傳輸,但是有時候對一些特殊業務來說是不允許的,為了保證數據在傳輸過程中的安全性,因此使用基于SSL的復制會大大加強數據的安全性。 二、準備工作 1、實驗系統環境: CentOS7.2,SELinux關閉,iptables關閉,安裝…

    Linux干貨 2017-02-24

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-12-16 23:30

    贊,總結的還是不錯的,能注意下第二部分內容中的小1和第五部分中的小2會更好~繼續加油~

欧美性久久久久