1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示?
cat(concatenate)#從頭開始看
文本文件查看工具
SYNOPSIS:
cat [OPTION]… [FILE]…
-A | 輸出行最后加上$號 |
-n | 輸出行號 |
例:
tac
和cat一樣,是查看文本工具,它是從最后往前看
SYNOPSIS:
tac [OPTION]… [FILE]…
more:
翻頁,只能向下翻
+num | 從num行開始翻頁 |
-num | 定義more查看頁面的大小 |
空格:一屏一屏往下翻
回車:一行一行往下翻
less:
和more一樣,這不過這里可以往上翻
/或? | 用來查詢 |
-N | less的內容中行首顯示行號 |
查詢時可以用:
n:往下翻
N:往上翻
例:
tail:
查看文本內容(從最后開始看)
SYNOPSIS
tail [OPTION]… [FILE]…
直接輸出行,默認是10行 | |
-# | 輸出最后一行到#號行信息 |
-f | 動態查看內容 |
例:
tail -f 和-F
-f和-F都是跟蹤testfile文檔;當刪除testfile文檔時,-f就不再跟蹤,而-F回繼續跟蹤并且會提示“tail: `testfile' has become inaccessible: No such file or directory”;當新建一個testfile文檔時,-F會繼續跟蹤顯示出來,而-f不會顯示;即-F不會因為刪除或重建而停止跟蹤。
退出:ctrl+c
head:
查看文本內容(從頭開始看)
SYNOPSIS
head [OPTION]… [FILE]…
-# | 輸出起始到#號行信息 |
例:
mkdir:
創建目錄
SYNOPSIS
mkdir [OPTION]… DIRECTORY…
-p | 創建多級目錄時,不管該目錄是否存在,直接創建 |
-v | 可視化 |
例:
rmdir:
刪除空目錄
SYNOPSIS
rmdir [OPTION]… DIRECTORY…
例
會刪除所有空目錄
cd:
~ | 進入家目錄和cd回車一樣效果 |
– | 回到上次所在目錄,與當前目錄來回切換 |
. |
當前目錄 |
.. | 上級目錄 |
~USERNAEM | 切換至指定用戶家目錄 |
ls:
-l | 顯示目錄項的詳細信息 |
-a |
顯示隱藏文件 |
-d | 查看當前目錄自身,而非其內部文件列表 |
-t | 當前目錄下按時間排序 |
-i | 查看inode |
-h | 以kb顯示,默認是字節 |
cp:
單源復制:cp [OPTION]… [-T] SOURCE DEST
多源復制:cp [OPTION]… SOURCE… DIRECTORY
-r -R | 遞歸復制目錄 |
-i | 交互式復制,即覆蓋之前提醒用戶(默認) |
-f | 強制覆蓋目標目錄 |
-a | 該選項通常在拷貝目錄時使用。它保留鏈接、文件屬性,并遞歸地拷貝目錄,其作用等于dpR選項的組合 |
-d | 復制符號鏈接文件本身,而非其指向的源文件 |
例:
mv
mv #剪切,還能重命名
[root@localhost ~]# mv 111 222 #mv 是把源目錄放到目標目錄下
rm
-f 強制刪除(該目錄不存在時,也能刪除,不會有提示)
-r 刪除目錄(不加,只會刪除目錄中的文件)
-i 刪除前會詢問(默認就加在里面了)
2、bash的工作特性之命令執行狀態返回值和命令行展開所涉及的內容及其示例演示?
~:自動展開為用戶的家目錄,或指定用戶的家目錄
{}:可承載一個以逗號分隔的路徑列表,并能將其展開為多個路徑
例:/tmp/{a,b}相當于/tmp/a /tmp/b
命令的執行狀態結果
Bash通過狀態返回值來輸出此結果
成功:0
失?。?-255
命令執行完成后,其狀態返回值保存于bash的特殊變量$?中;
3、請使用命令行展開功能來完成以下練習?
(1)、創建/tmp目錄下的:a_c, a_d, b_c, b_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
答:]# mkdir -vp /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-scripts},lib/modules,lib64,porc,sbin,sys,tmp,usr/local/{bin,sbin},var/{lock,log,run}}
4、文件的元數據信息有哪些,分別表示什么含義,如何查看?如何修改文件的時間戳信息?
File:文件名
Size:文件大小
Blocks:占據的塊數(磁盤事先是被分隔成塊的)
IO Block:IO塊的大小,如上例,每個塊大小是4096,共占據了8個塊,就等于8*4096
Device:所在的設備號
Inode:索引節點號
Links:硬鏈接
Access:權限
Uid:屬主以及它的UID號
Gid:屬組以及它的GID號
Access:最近訪問時間
Modify:最近更改
Change:最近改動
stat:
顯示文件或文件系統狀態
access:訪問時間-atime
modify:創建或更改文件時間-mtime
change:更改的元數據(像inode,文件名,權限,屬主,屬組)-ctime
touch:
改變時間戳
-c | 指定的文件路徑不存在不予創建 |
-a | 僅修改access time |
-t | 后面可以接欲修訂的時間而不用目前的時間,格式為[YYMMDDhhmm] |
-m | 僅修改modify time |
例:
5、如何定義一個命令的別名,如何在命令中引用另一個命令的執行結果?
SYNOPSIS:
alias[別名]=[指令名稱]
例:
[root@localhost ~]# alias s='ls -alt /var/' #設置別名
[root@localhost ~]# alias #查看別名
[root@localhost ~]#unalias +別名 #刪除別名
alias只在當前終端下生效
要想永久有效,可以放下面
[root@localhost ~]# vi /etc/profile #一般不放在這下面
[root@localhost ~]# vi .bashrc #家目錄.bashrc
6、顯示/var目錄下所有以l開頭,以一個小寫字母結尾,且中間至少出現一位數字(可以有其它字符)的文件或目錄?
~]# ls -ld /var/l[0-9]*[[:lower:]]
7、顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄?
~]# ls -d /etc/[[:digit:]]*[^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 -p /etc/*.d /tmp/mytest2
12、復制/etc/目錄下所有以l或m或n開頭,以.conf結尾的文件至/tmp/mytest3目錄中?
~]# cp -p /etc/[lmn]*.conf /tmp/mytest3
原創文章,作者:CC,如若轉載,請注明出處:http://www.www58058.com/57935
博客完成的非常好,有運行結果的展示,非常充分的說明問題,加油!