1. 程式人生 > >基本命令二

基本命令二

表達式 基本 upd 修改 tar.xz 沒有 自己 硬件時間 OS

基本命令二 date、find、tar、zip、gzip、bzip2、xz date: date:查看系統時間 hwclock:查看硬件時間 date +%F:2017-04-11 date +%Y%m%d:20170411 date ‘+%F %T‘:2018-06-10 17:59:09 date +%s -d 20170411:表示2017-04-11距離1970-01-01 00:00:00有多少秒 設置時間:date -s +format # date -s "20150303 10:10:10" # date -s "11:11:11 20150505" 時間同步:hwclock -w:(hwclock --systohc) 以系統時間為準 hwclock -s:(hwclock --hctosys) 以硬件時間為準 ntpdate ip地址 :同步網絡時間 # ntpdate 10.1.1.254s 時間服務:chronyd /etc/chrony.conf # yum install chrony # systemctl start chronyd # date +%F -d "30 days":查看30天以前是幾月幾日 # date +%F -d "30 days ago":查看30天以後是幾月幾日 # touch $(date +%Y%m%d).log cal 查看日歷 # cal 26 3 2017 文件查找: 命令查找: which command whereis command whatis command 簡單解釋 任意文件查找: 1、locate 基於數據庫查找,速度快,不精確,會略臨時目錄 /tmp ,/var/tmp /var/lib/mlocate/mlocate.db /etc/cron.daily/mlocate.cron updatedb 更新數據庫 2、find 基於磁盤查找,精確的,磁盤讀寫 i/o消耗,cpu開銷相對較大 find path -option 關鍵字 find path -option 關鍵字 [ -exec|-ok..] shell command \; path:eg :/ /etc /dev option: -name:按名字查看 -iname:忽略大小寫 -type:按文件的類型 : f(文件) d (目錄)b(塊設備) c(字符) s(socker) p(管道) l(連接) -size:+ - eg:-size +3M:大於3M -perm:按權限 eg:-perm 777 -atime: -mtime: -n(n天以內) +n(n天以前) n(n當天) 不包含n那一天 -ctime: -user:屬主查找 -nouser:屬主查找(沒有屬主) -group:屬組查找 -nogroup:屬組查找(沒有屬組) -regex:正則表達式 動作: -print:默認 打印 -ls:列出來 -delete:刪除 -exec:後面接command 直接執行不提示 -ok:後面接command 提示(交互式) | :將上一命令所執行的結果作為下一個命令的輸入 xargs:將上一命令所執行的結果作為下一個命令的參數 -t:先打印出來 -i:作為一整行 eg:# find /etc -name ‘*.conf‘ # find ./ -mtime +3 -exec cp {} /tmp/* \; # find ./ -type f |xargs -ti mv {} {}.bak ########################################################### 打包壓縮工具: zip gzip bzip2 xz 壓縮 tar 打包 zip:壓縮多個文件(將多個文件壓縮為一個) --------------------------->*.zip zip 壓縮後的文件 需要壓縮的文件 (使用絕對路徑時目錄也會被壓縮) -r:遞歸壓縮(同時壓縮目錄下的文件) unzip 需要解壓的文件 -d:指定解壓後的路徑 gzip:壓縮單個文件;壓縮速度快;壓縮率低;cpu開銷相對較低 -------------------------->*.gz gzip 需要壓縮的文件 (可以是多個文件) gunzip 需要解壓的文件 = gzip -d 需要解壓的文件 gzip -r dir:將目錄下的文件壓縮 gzip -c 需要壓縮的文件file1 > 壓縮後的文件file2:(保留源文件不被改變) bzip2:壓縮單個文件;壓縮速度慢;壓縮率高;cpu開銷相對較高 ---------------------->*.bz2 bzip2 需要壓縮的文件 (可以是多個文件) bunzip2 需要解壓的文件 = bzip2 -d 需要解壓的文件 -k:保留源文件 xz:壓縮單個文件;解壓速度快;壓縮時間較長;cpu開銷相對較大 ---------------------->*.xz xz 需要壓縮的文件 (可以是多個文件) unxz 解壓縮 = xz -d -k:保留源文件 tar:打包壓縮工具 ---------------------------------------->*.tar tar 選項 打包壓縮後的文件 需要打包壓縮的文件 -c:創建tar包 -f:指定tar包(文件)[一般放到所有參數最後] -v:顯示詳細信息 -z:調用gzip工具壓縮 xxx.tar.gz -j:調用bzip2工具壓縮 xxx.tar.bz2 -J:調用xz工具壓縮 xxx.tar.xz -t:查看tar包內容 -tf -r:往tar包裏讀取文件/追加文件 -C:指定解壓後的路徑 -x:解壓縮 -P: 註意: 1、盡可能使用相對路徑 2、-f參數盡可能放到所有參數後面 # tar -cvf /tmp/xxx.tar /boot # tar czvf /tmp/xxx.tar.gz /etc/* 課堂練習: 1、將自己的系統時間修改為2020-10-10 11:11,並寫到cmos中 2、通過時間同步服務器(10.1.1.254)同步自己的系統時間,同時同步硬件時間 3、找出根下所有塊設備文件,並將標準輸出及標準錯誤重定向到/tmp/find.txt文件中 4、找出/etc/下面以.conf結尾的文件並將其復制到/home/backup目錄中 # find /etc -name *.conf -type f -exec cp {} /home/backup/ \; # find /etc -name ‘*.conf‘ -type f|xargs -i cp {} backup/ 5、將/home/backup下的所有文件全部打包壓縮到/tmp/系統日期(2017-10-10).tar.gz # tar -czvf /tmp/$(date -d ‘183 days‘ +%F).tar.gz backup/* 6、將/tmp/2017-10-10.tar.gz文件解壓到/tmp/test目錄中,並打包成20170410.tar # tar xf 2017-10-10.tar.gz -C test/ # tar -cf $(date +%Y%m%d).tar backup/ 7、將/tmp/find.txt文件追加到20170410.tar文件中 # tar -rP /tmp/find.txt -f 20170410.tar

基本命令二