本周學習了:
linux的目錄層級結構、常見文件類型、bash基本特性、文件的基本管理命令、globbing文件通配符、用戶管理命令
開始作業!
1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。
文件管理命令有:ls,cp,mv,pwd,mkdir,rmdir,touch
ls 列出目錄的中內容
常用選項
-a 列出全部文件或目錄包含隱藏文件
-A 列出除.和..之外的全部文件或目錄包含隱藏文件
–color 對不同類型文件用顏色區分
-d 只列出目錄本身
-l 長格式輸出
-h 已異度的方式列出文件大小
-r 逆序顯示
-R 遞歸顯示目錄里的內容
cp 復制文件或目錄
常用選項
-i 交互式信息提示
-f 忽略交互式信息
-r 復制目錄
-d 復制符號鏈接文件的同時復制鏈接的指向地址
-a 遞歸復制
mv 移動(重命名)文件或目錄
常用選項
-i 交互式信息提示
-f 忽略交互式信息
pwd 顯示當前工作目錄
mkdir 創建空目錄
常用選項
-p 遞歸創建
rmdir 刪除空目錄
touch 修改文件的時間戳
常用選項
-a 修改access time
-m 修改modify time
-c 不創建文件
-t 修改access time或modify time到指定時間
使用格式 [[CC]YY]MMDDhhmm[.ss]
例子:touch -a -t 201701121212 fstab
2、bash的工作特性之命令執行狀態返回值和命令行展開所涉及的內容及其示例演示。
命令的執行狀態可以使用命令:echo $?來進行查看,其中命令的返回狀態值的范圍是0-255,只有返回值是0的時候表示命令執行成功了,1-255表示命令執行失敗返回的各種狀態碼。
命令行展開:在命令行敲入命令或者路徑的時候可以在輸入完部分字符后使用tab建進行命令或目錄補全,當使用tab補全命令時bash會自動去PATH中的路徑查找符合命令,當補全路徑時可以在絕對路徑或者相對路徑下開始查找符合的路徑名稱。
3、請使用命令行展開功能來完成以下練習:
(1)、創建/tmp目錄下的:a_c, a_d, b_c, b_d
[root@magedu tmp]# mkdir /tmp/{a,b}_{c,d}
(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@magedu tmp]# 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: created directory ‘/tmp/mylinux’
mkdir: created directory ‘/tmp/mylinux/bin’
mkdir: created directory ‘/tmp/mylinux/boot’
mkdir: created directory ‘/tmp/mylinux/boot/grub’
mkdir: created directory ‘/tmp/mylinux/dev’
mkdir: created directory ‘/tmp/mylinux/etc’
mkdir: created directory ‘/tmp/mylinux/etc/rc.d’
mkdir: created directory ‘/tmp/mylinux/etc/rc.d/init.d’
mkdir: created directory ‘/tmp/mylinux/etc/sysconfig’
mkdir: created directory ‘/tmp/mylinux/etc/sysconfig/network-scripts’
mkdir: created directory ‘/tmp/mylinux/lib’
mkdir: created directory ‘/tmp/mylinux/lib/modules’
mkdir: created directory ‘/tmp/mylinux/lib64’
mkdir: created directory ‘/tmp/mylinux/proc’
mkdir: created directory ‘/tmp/mylinux/sbin’
mkdir: created directory ‘/tmp/mylinux/sys’
mkdir: created directory ‘/tmp/mylinux/tmp’
mkdir: created directory ‘/tmp/mylinux/usr’
mkdir: created directory ‘/tmp/mylinux/usr/local’
mkdir: created directory ‘/tmp/mylinux/usr/local/bin’
mkdir: created directory ‘/tmp/mylinux/usr/local/sbin’
mkdir: created directory ‘/tmp/mylinux/var’
mkdir: created directory ‘/tmp/mylinux/var/lock’
mkdir: created directory ‘/tmp/mylinux/var/log’
mkdir: created directory ‘/tmp/mylinux/var/run’
4、文件的元數據信息有哪些,分別表示什么含義,如何查看?如何修改文件的時間戳信息。
文件的元數據包含以下信息
使用stat命令查看文件的元數據信息
[root@magedu tmp]# stat /etc/issue
File: ‘/etc/issue’
Size: 23 Blocks: 8 IO Block: 4096 regular file
Device: fd00h/64768d Inode: 67160168 Links: 1
Access: (0644/-rw-r–r–) Uid: ( 0/ root) Gid: ( 0/ root)
Context: system_u:object_r:etc_t:s0
Access: 2017-01-12 05:04:18.829000305 +0800
Modify: 2016-11-30 02:12:59.000000000 +0800
Change: 2017-01-03 05:58:31.296002313 +0800
含義:
File:文件名稱
size:文件大小
blocks:占用block數
access:文件的權限信息
Access:最近一次的訪問時間
Modify:最近一次的修改時間
Change:元數據最近一次的修改時間
修改文件的訪問時間
touch -a /etc/issue
修改文件的修改時間
touch -m /etc/issue
使用指定時間修改訪問時間
touch -a -t 20170110153654 /etc/issue
5、如何定義一個命令的別名,如何在命令中引用另一個命令的執行結果?
別名使用命令:alias
命令使用格式:alias NAME='COMMAND'
在定義別名時可以分為兩類:
一類:全局別名,所有用戶可用
定義方式 在/etc/bashrc文件的最后一行添加,或者在/etc/profile.d/目錄下新建別名腳本文件,添加完成使用命令source命令使之生效。
二類:私有別名,僅對當前shell有效
定義方式 普通用戶在自己的家目錄的.bashrc文件的最后一行添加別名。
在命令中引用另一個命令的執行結果使用:“
即:echo `date`
6、顯示/var目錄下所有以l開頭,以一個小寫字母結尾,且中間至少出現一位數字(可以有其它字符)的文件或目錄。
ls -d /var/l*[0-9]*[a-z]
7、顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄。
ls -d /etc/[0-9]*[^0-9]
8、顯示/etc目錄下,以非字母開頭,后面跟了一個字母以及其它任意長度任意字符的文件或目錄。
ls -d /etc/[^[:alpha:]][[:alpha:]]*
9、在/tmp目錄下創建以tfile開頭,后跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22。
touch /tmp/tfile-`date +%Y-%m-%d-%H-%M-%S`
10、復制/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中。
cp -r /etc/p*[^0-9] /tmp/mytest1
11、復制/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中。
cp -r /etc/*.d /tmp/mytest2
12、復制/etc/目錄下所有以l或m或n開頭,以.conf結尾的文件至/tmp/mytest3目錄中。
cp /etc/{l,m,n}*.conf /tmp/mytest3
原創文章,作者:Roymeida,如若轉載,請注明出處:http://www.www58058.com/66491
依然很棒,加油。