N25-第二周作業

第二周作業


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

Linux上的文件管理命令有:cp , mv , rm 等命令

cp是復制命令: 
命令使用格式是: 
cp [OPTION]... SOURCE... DEST 
例:root@vps ~]# cp /etc/passwd /tmp 復制/etc/passwd文件到/tmp目錄下。

cp命令的常用參數有: 
-i:交互式復制,即覆蓋之前提醒用戶確認;用于目標文件已存在,覆蓋復制。

[root@vps ~]# cp -i /etc/passwd /tmpcp: overwrite ‘/tmp/passwd’?

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

[root@vps ~]# cp -r /etc /tmp/

-d:復制符號鏈接文件本身,而非其指向的源文件; 
-a:-dR –preserve=all, archive,用于實現歸檔;-a就是遞歸復制和復制符號鏈接文件本身泉都包括的選項。

mv是移動或重命名文件命令: 
命令使用格式是: 
mv [OPTION]... SOURCE... DIRECTORY 
例:[root@vps ~]# mv /tmp/etc/hosts /tmp/移動/tmp/etc/hosts文件到/tmp下 
例:mv /tmp/hosts /tmp/hosss /tmp/hosts改名為hosss

rm是刪除文件或目錄命令: 
命令使用格式是: 
rm [OPTION] /PATH/FILE 
例:[root@vps ~]# rm /tmp/hosss 刪除/tmp/hosss文件。 
如果想刪除目錄需要加參數 -r ,意思是遞歸刪除目錄及目錄下文件。 
例:[root@vps ~]# rm -r /tmp 此命令操作相當危險,不建議使用。 
此外還有一個參數 -f 是強制刪除的意思。

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

bash中命令執行完成之后,其狀態返回值保存于bash的特殊變量$?中。命令正常執行后,根據命令及其功能不同,結果各不相同。

查看命令執行狀態返回值的命令是: [root@vps ~]# echo $? 
如果命令執行成功,返回值會是0 
如果命令執行不成功,返回值會是1-255之間的數值。 
例:下面這個例子是命令執行成功的例子。

[root@vps ~]# ls /tmpetc  passwd[root@vps ~]# echo $?0

例:下面是命令執行失敗的例子。

[root@vps ~]# lo /tmp-bash: lo: command not found[root@vps ~]# echo $?127

bash的基礎特性之:命令行展開 
~:自動展開為用戶的家目錄,或指定的用戶的家目錄 
例:從/目錄切換到登錄用戶的家目錄。

[root@vps /]# cd ~[root@vps ~]# pwd/root

{}:可承載一個以逗號分隔的路徑列表,并能夠將其展開為多個路徑 
例如:/tmp/{a,b} 相當于 /tmp/a /tmp/b

3.請使用命令行展開功能來完成以下練習。

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

[root@vps tmp]# mkdir -pv /tmp/{a,b}_{c,d}
mkdir: created directory ‘/tmp/a_c’
mkdir: created directory ‘/tmp/a_d’
mkdir: created directory ‘/tmp/b_c’
mkdir: created directory ‘/tmp/b_d’
[root@vps tmp]#

(2)創建/tmp/mylinux目錄下的: 
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@vps tmp]# mkdir -p /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}}

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

文件的元數據是文件名、文件大小、占據磁盤的塊、權限、時間戳等??梢杂妹?code>stat FILENAME來查詢文件的元數據信息。 
例:

[root@vps tmp]# stat test/
  File: ‘test/’
  Size: 4096      	Blocks: 8          IO Block: 4096   directory
Device: ca01h/51713d	Inode: 402915      Links: 2
Access: (0755/drwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2016-12-14 18:31:19.645348845 +0800
Modify: 2016-12-14 18:31:19.645348845 +0800
Change: 2016-12-14 18:31:19.645348845 +0800
 Birth: -

File:文件名 , Size:文件大小 , Block:占據多少磁盤塊 , IO Block:沒個磁盤塊的大小 ,regular file:文件是普通文件 , Device:文件所在設備主編號和次編號 , Inode:inode編號 , Linux:文件被硬鏈接的次數,1表示沒有硬鏈接 . 
第一個Access:權限,屬主uid及名字,屬組gid及名字 . 
第二個Access:文件最后一次被訪問的時間 . Modify:文件的數據最后一次被修改的時間 . 
Change:文件的元數據最后一次變化的時間.

修改時間戳的命令是touch: 
例:[root@vps tmp]# touch stat_test touch后的文件如果是已經存在的文件就會修改文件元數據的所有時間戳,如果文件不存在,touch會創建一個新的空文件。

touch常用參數: 
-c: 指定的文件路徑不存在時不予創建 
-a: 僅修改access time 
-m: 僅修改modify time 
-t STAMP 修改自定義時間,格式:[[CC]YY]MMDDhhmm[.ss]

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

獲取所有可用別名的定義: 
~]# alias 
定義別名: 
~]# alias NAME='COMMAND' 注意:僅對當前shell進程有效 
撤銷別名: 
~]# unalias NAME

在命令中引用另一個命令的執行結果可以通過管道來實現: 
~]#cat /etc/passwd | grep "root"

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

~]#ls -d /var/l*[0-9]*[[:lower:]]

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

~]#ls -d /etc/[0-9]*[^0-9]

8.顯示/etc目錄下,以非非字母開頭,后邊跟了一個字母以及其他任意長度任意字符的文件或目錄

~]#ls -d /etc/[^[:alpha:]][[:alpha:]]*

9.在/tmp目錄下創建以tfile開頭,后跟當前日期和時間的文件,文件名如tfile-2016-05-26-08-32-22

~]#touch /tmp/tfile-$(date +%Y-%m-%d-%H-%M-%S)

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

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

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

~]#mkdir /tmp/mytest2 
~]#cp -r /etc/*.d /tmp/mytest2

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

~]#mkdir /tmp/mytest3 
~]#cp -r /etc/[lmn]*.conf /tmp/mytest3

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

(0)
EasonEason
上一篇 2016-12-14
下一篇 2016-12-14

相關推薦

  • N22-第三周作業

    列出當前系統上所有已經登錄的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。 [root@localhost ~]# w |cut -d ' ' -f1 |sort -u lucy root USER 2.取出最后登錄到當前系統的用戶的相關信息。 [root@localhost ~]# last -1 root   &nbs…

    Linux干貨 2016-08-28
  • N25-第八周

    1、寫一個腳本,使用ping命令探測172.16.250.1-172.16.250.254之間的所有主機的在線狀態; 在線的主機使用綠色顯示; 不在線的主使用紅色顯示; #!/bin/bash ipnet=172.16.250. trap ‘trap_action’ INT trap_action() { break return 1 } for ((i=1…

    Linux干貨 2017-05-27
  • 馬哥教育網絡班21期+第2周作業

    1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。     cp復制,mv移動,rm刪除     1、cp:             1,用法: cp [OPTIO…

    Linux干貨 2016-07-12
  • Shell腳本中循環淺析

    在shell腳本中,循環是很重要的一環。循環可以不斷的執行某個程序段落,直到用戶設置的條件達成為止。在shell中,除了這種依據判斷時達成與否的不定循環之外,還有另外一種已經固定要跑多少次的循環,可稱之為固定循環。下面,我們主要對for,while,until三種循環做一下介紹。   一、for循環 For循環是給定變量列表的固定次數循環,其執行機…

    Linux干貨 2016-08-21
  • 【N25第二周作業】Linux文件管理命令以及文件名通配glob

    1、Linux下的文件管理類命令使用方法和示例 Linux下的文件管理類命令有如下列舉的一些: 目錄管理命令:cd,pwd,ls,mkdir,rmdir,tree文件管理命令:touch,cp,mv,rm,stat查看:more,less,head,tail,cat,tac,lsattr,whereis,which權限:chmod,chown,chattr,…

    Linux干貨 2016-12-12
  • 分區管理

    分區管理     一.磁盤分類 機械硬盤(HDD):該硬盤是傳統的普通硬盤。主要有:盤片,磁頭,盤片轉軸及控制電機,磁頭控制器,數據轉換器,接口,緩存等幾個部分組成  固態硬盤(SSD):用固態電子存儲芯片陣列而制成的硬盤,由控制單元和存儲單元組成。 二.特點 1.     &n…

    Linux干貨 2017-08-20
欧美性久久久久