access.log ``` 不過(guò)癮?好吧,我也順便總結(jié)下,其它幾種最常見的清空文件的方法 ``` : > access.log true > access.log cat /dev/null > access.log echo -n "" > access.log echo > access.log truncate -s 0 access.l" />
摘要:可以通過(guò)命令,輕松實(shí)現(xiàn)使用生成隨機(jī)數(shù)據(jù),將生成的數(shù)據(jù)寫入硬盤中,相當(dāng)于安全的擦除了硬盤數(shù)據(jù)。因此對(duì)于類似情況,的值就會(huì)大于其它兩項(xiàng)之和。
快速清空一個(gè)文件,有 N 種方法,我比較喜歡下邊這種,因?yàn)樗疃?/p>
$ > access.log
不過(guò)癮?好吧,我也順便總結(jié)下,其它幾種最常見的清空文件的方法
: > access.log
true > access.log
cat /dev/null > access.log
echo -n "" > access.log
echo > access.log
truncate -s 0 access.log
簡(jiǎn)單解釋下, : 在 shell 中是一個(gè)內(nèi)置命令,表示 no-op,大概就是空語(yǔ)句的意思,所以 : 的那個(gè)用法,就是執(zhí)行命令后,什么都沒有輸出,將空內(nèi)容覆蓋到文件。
有時(shí)候,在 Linux 上,我們需要一個(gè)大文件,用于測(cè)試上傳或下載的速度,通過(guò) dd 命令可以快速生成一個(gè)大文件
$ dd if=/dev/zero of=file.img bs=1M count=1024
上述命令,生成一個(gè)文件名為 file.img 大小為 1G 的文件。
介紹一種擦除硬盤數(shù)據(jù)的方法,高效,安全。可以通過(guò) dd 命令,輕松實(shí)現(xiàn):
$ dd if=/dev/urandom of=/dev/sda
使用 /dev/urandom 生成隨機(jī)數(shù)據(jù),將生成的數(shù)據(jù)寫入 sda 硬盤中,相當(dāng)于安全的擦除了硬盤數(shù)據(jù)。
在 Linux 下制作系統(tǒng)盤,老毛桃神么工具都弱爆了,直接一條命令搞定:
$ dd if=ubuntu-server-amd64.iso of=/dev/sdb
可能,大部分同學(xué)只會(huì)使用 ps aux,其實(shí)可以通過(guò) -o 參數(shù),指定只顯示具體的某個(gè)字段,會(huì)得到更清晰的結(jié)果。
$ ps -p 10167 -o etimesetime
#結(jié)果
ELAPSED ELAPSED
1712055 19-19:34:15
通過(guò) etime 獲取該進(jìn)程的運(yùn)行時(shí)間,可以很直觀地看到,進(jìn)程運(yùn)行了 19 天
同樣,可以通過(guò) -o 指定 rss 可以只獲取該進(jìn)程的內(nèi)存信息。
$ ps -p 10167 -o rss
#結(jié)果
RSS
2180
通過(guò) tail 命令 -f 選項(xiàng),可以動(dòng)態(tài)地監(jiān)控日志文件的變化,非常實(shí)用
$ tail -f test.log
如果想在日志中出現(xiàn) Failed 等信息時(shí)立刻停止 tail 監(jiān)控,可以通過(guò)如下命令來(lái)實(shí)現(xiàn):
$ tail -f test.log | sed /Failed/ q
時(shí)間操作,對(duì)程序員來(lái)說(shuō)就是家常便飯。有時(shí)候希望能夠?qū)r(shí)間戳,轉(zhuǎn)換為日期時(shí)間,在 Linux 命令行上,也可以快速的進(jìn)行轉(zhuǎn)換:
$ date -d@1234567890 +"%Y-%m-%d %H:%M:%S"
#結(jié)果
2009-02-14 07:31:30
當(dāng)然,也可以在命令行上,查看當(dāng)前的時(shí)間戳
$ date +%s
#結(jié)果
1617514141
在 Linux 下,可以通過(guò) time 命令,很容易獲取程序的運(yùn)行時(shí)間:
$ time ./test
real 0m1.003s
user 0m0.000s
sys 0m0.000s
可以看到,程序的運(yùn)行時(shí)間為: 1.003s。細(xì)心的同學(xué),會(huì)看到 real 貌似不等于 user + sys,而且還遠(yuǎn)遠(yuǎn)大于,這是怎么回事呢?
先來(lái)解釋下這三個(gè)參數(shù)的含義:
由于 user 和 sys 只統(tǒng)計(jì) cpu 消耗的時(shí)間,程序運(yùn)行期間會(huì)調(diào)用 sleep 發(fā)生阻塞,也可能會(huì)等待網(wǎng)絡(luò)或磁盤 IO,都會(huì)消耗大量時(shí)間。因此對(duì)于類似情況,real 的值就會(huì)大于其它兩項(xiàng)之和。
我們?cè)陂_發(fā)過(guò)程中,通常需要查看 ascii 碼,通過(guò) Linux 命令行就可以輕松查看,而不用去 Google 或 Baidu
$ man ascii
在 Linux 系統(tǒng)中,會(huì)經(jīng)常碰到名稱亂碼的文件。想要?jiǎng)h除它,卻無(wú)法通過(guò)鍵盤輸入名字,有時(shí)候復(fù)制粘貼亂碼名稱,終端可能識(shí)別不了,該怎么辦?
不用擔(dān)心,下邊來(lái)展示下 find 是如何優(yōu)雅的解決問(wèn)題的。
$ ls -i
138957 a.txt 138959 T.txt 132395 ???.txt
$ find . -inum 132395 -exec rm {} ;
命令中,-inum 指定的是文件的 inode 號(hào),它是系統(tǒng)中每個(gè)文件對(duì)應(yīng)的唯一編號(hào),find 通過(guò)編號(hào)找到后,執(zhí)行刪除操作。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/126320.html
摘要:主要語(yǔ)句如下其中主要在探測(cè)點(diǎn)邏輯處理中使用,調(diào)用此語(yǔ)句時(shí),立刻從調(diào)用函數(shù)中退出。不同于的是,只是退出當(dāng)前的調(diào)用函數(shù),而此并沒有終了,但則會(huì)終止。局部變量在聲明的和范圍內(nèi)的部分內(nèi)有效。全局變量的聲明位置沒有具體要求。 1.簡(jiǎn)介 SystemTap是一個(gè)Linux非常有用的調(diào)試(跟蹤/探測(cè))工具,常用于Linux 內(nèi)核或者應(yīng)用程序的信息采集,比如:獲取一個(gè)函數(shù)里面運(yùn)行時(shí)的變 量、調(diào)用...
閱讀 3538·2023-04-25 20:09
閱讀 3739·2022-06-28 19:00
閱讀 3060·2022-06-28 19:00
閱讀 3081·2022-06-28 19:00
閱讀 3175·2022-06-28 19:00
閱讀 2880·2022-06-28 19:00
閱讀 3047·2022-06-28 19:00
閱讀 2638·2022-06-28 19:00