主要要看此時在做什么。
創(chuàng)新互聯(lián)堅信:善待客戶,將會成為終身客戶。我們能堅持多年,是因為我們一直可值得信賴。我們從不忽悠初訪客戶,我們用心做好本職工作,不忘初心,方得始終。10余年網(wǎng)站建設(shè)經(jīng)驗創(chuàng)新互聯(lián)是成都老牌網(wǎng)站營銷服務(wù)商,為您提供成都網(wǎng)站建設(shè)、做網(wǎng)站、網(wǎng)站設(shè)計、html5、網(wǎng)站制作、品牌網(wǎng)站建設(shè)、微信小程序開發(fā)服務(wù),給眾多知名企業(yè)提供過好品質(zhì)的建站服務(wù)。
1、如果是在執(zhí)行很耗時的命令, 可以先Ctrl-Z, 然后bg使其用background模式運(yùn)行.。這時就可以回到命令狀態(tài)。
2、如果在命令行下使用gedit, 關(guān)閉程序窗口(一般先保存文件),就自動退到命令行界面。
如果在命令行下使用vim,先按下ESC退出編輯模式,然后輸入:wq 保存并退出或者q退出或者q!強(qiáng)制退出,從而回到命令行界面。
3、如果是其他的狀態(tài)可以嘗試Ctrl+Alt+F1~F6。
關(guān)于Linux:
Linux是一套免費使用和自由傳播的類Unix操作系統(tǒng),是一個基于POSIX和UNIX的多用戶、多任務(wù)、支持多線程和多CPU的操作系統(tǒng)。它能運(yùn)行主要的UNIX工具軟件、應(yīng)用程序和網(wǎng)絡(luò)協(xié)議。它支持32位和64位硬件。Linux繼承了Unix以網(wǎng)絡(luò)為核心的設(shè)計思想,是一個性能穩(wěn)定的多用戶網(wǎng)絡(luò)操作系統(tǒng)。
Linux操作系統(tǒng)誕生于1991 年10 月5 日(這是第一次正式向外公布時間)。Linux存在著許多不同的Linux版本,但它們都使用了Linux內(nèi)核。Linux可安裝在各種計算機(jī)硬件設(shè)備中,比如手機(jī)、平板電腦、路由器、視頻游戲控制臺、臺式計算機(jī)、大型機(jī)和超級計算機(jī)。
嚴(yán)格來講,Linux這個詞本身只表示Linux內(nèi)核,但實際上人們已經(jīng)習(xí)慣了用Linux來形容整個基于Linux內(nèi)核,并且使用GNU 工程各種工具和數(shù)據(jù)庫的操作系統(tǒng)。
打開cmd然后輸入下面代碼
set?"name=張三"
echo?my?name?is?%name%,hah
安裝speedtest-cli
speedtest-cli是一個用Python編寫的輕量級Linux命令行工具,在Python2.4至3.4版本下均可運(yùn)行。它基于Speedtest.net的基礎(chǔ)架構(gòu)來測量網(wǎng)絡(luò)的上/下行速率。安裝speedtest-cli很簡單——只需要下載其Python腳本文件。
$ wget
$ chmod a+rx speedtest_cli.py
$ sudo mv speedtest_cli.py /usr/local/bin/speedtest-cli
$ sudo chown root:root /usr/local/bin/speedtest-cli
使用speedtest-cli測試網(wǎng)速
使用speedtest-cli命令也很簡單,它不需要任何參數(shù)即可工作。
$ speedtest-cli
輸入這個命令后,它會自動發(fā)現(xiàn)離你最近的Speedtest.net服務(wù)器(地理距離),然后打印出測試的網(wǎng)絡(luò)上/下行速率。
如果你愿意分享測試結(jié)果,你可以使用參數(shù)“–share”。它將會把你的測試結(jié)果上傳到Speedtest.net服務(wù)器并以圖形的方式分享給其他人。
下面是一幅由speedtest-cli自動生成并上傳到Speedtest.net的測試結(jié)果:
如果你對目前所有可用的Speedtest.net服務(wù)器感興趣,你可以使用參數(shù)“–list”。它會打印出所有的Speedtest.net服務(wù)器(按照離你的地理距離由近及遠(yuǎn)排序)。
在上面的列表中,每個服務(wù)器的前面都有一個與其對應(yīng)的ID。如果想使用指定的服務(wù)器來測試你的網(wǎng)速,你只需要在speedtest-cli命令后指定其ID即可。例如,如果想使用在Washington DC的服務(wù)器,你只需要指定相對應(yīng)的服務(wù)器ID(如935)。
在Linux系統(tǒng)里面用到 cp命令復(fù)制不能顯示文件拷貝的進(jìn)度,也不能計算還有多長時間文件可以 拷貝結(jié)束,現(xiàn)在寫一個程序可以顯示文件拷貝的進(jìn)度。
思路:當(dāng)前目錄下面有一個1G大小的bigfile文件
當(dāng)我在命令行下面輸入ls -lh bigfile,我會得到這個文件的詳細(xì)信息,當(dāng)然也可以看到文件的大小。
ls -lh bigfile
-rw-rw-r-- 1 nii nii 1000M 7月 13 19:41 bigfile
我們可以用popen函數(shù),把執(zhí)行之后的結(jié)果”-rw-rw-r– 1 nii nii 1000M 7月 13 19:41 bigfil”這串字符串接收下來,我們可以提取出來表示文件大小的那段字符串,比如這個我們可以提取”1000”在用atoi函數(shù),把字符串轉(zhuǎn)換為int型數(shù)值1000(不了解popen函數(shù)和atoi函數(shù)的請自行學(xué)習(xí)),就可以獲得文件大小。
例如我的文件名字叫mycp.c,我執(zhí)行g(shù)cc -o mycp mycp.c生成一個mycp的可執(zhí)行文件。
接下來我在命令行上輸入./mycp bigfile destbigfile把當(dāng)前目錄下面的bigfile文件拷貝為destbigfile,這時我產(chǎn)生一個子進(jìn)程,子進(jìn)程負(fù)責(zé)調(diào)用系統(tǒng)的cp命令拷貝,父進(jìn)程每隔一秒鐘,去獲取destbigfile、bigfile 文件的大小,就可以知道拷貝的進(jìn)度,當(dāng)然也可以獲得拷貝的時間,就可以計算出來離拷貝結(jié)束還有多長時間。
下面是代碼的實現(xiàn):
#include
#include
#include
#include
#include
#include
#include
/** 得到文件的詳細(xì)信息 */
int getFileMsg(char* pchCmd,char *pchMsg);
int main(int argc,char* argv[])
{
char szSrcFileMsg[150] = {0};
char szSrcFileSizeMsg[10] = {0};
int nSrcFileSize = 0;
char szSDestFileMsg[150] = {0};
char szDestFileSizeMsg[10] = {0};
int nDestFileSize = 0;
int pid = 0;
/** shell執(zhí)行的命令 ,在創(chuàng)建文件的時候使用*/
char szExcueCommand[150] = {0};
float fRate = 0;
int nUsedTime = 0;
float nLastTime = 0;
/** 入?yún)⒈仨毷侨齻€ */
if (1 == argc)
{
printf("please input the src and des file\n");
return -1;
}
/** 產(chǎn)生子進(jìn)程 */
pid = fork();
/** 如果是子進(jìn)程,負(fù)責(zé)執(zhí)行復(fù)制命令 */
if (0 == pid)
{
sprintf(szExcueCommand,"%s %s %s","cp",argv[1],argv[2]);
printf("%s\n",szExcueCommand);
system(szExcueCommand);
return 0;
}
/** 父進(jìn)程負(fù)責(zé)把正在復(fù)制的原文件和復(fù)制的目標(biāo)文件的大小計算出來,就可以知道復(fù)制的進(jìn)度,計算頻率為1秒一次 */
else
{
/** 獲得原文件的大小 */
if (-1 == getFileMsg(argv[1],szSrcFileMsg))
{
printf("get sorce file message failed \n");
return -1;
}
/** 把原文件大小的信息取出來 */
strncpy(szSrcFileSizeMsg,szSrcFileMsg+21,4);
szSrcFileSizeMsg[5] = '\0';
nSrcFileSize = atoi(szSrcFileSizeMsg);
while(1)
{
sleep(1);
nUsedTime ++;
/** 獲得目標(biāo)文件的大小 */
if (-1 == getFileMsg(argv[2],szSDestFileMsg))
{
printf("get dest file message failed \n");
return -1;
}
/** 把原文件大小的信息取出來 */
strncpy(szDestFileSizeMsg,szSDestFileMsg+21,4);
szDestFileSizeMsg[5] = '\0';
nDestFileSize = atoi(szDestFileSizeMsg);
/*** 計算復(fù)制的進(jìn)度 */
fRate = (nDestFileSize * 100) / nSrcFileSize ;
/** 計算剩下的時間 */
nLastTime = ((100 - fRate) * nUsedTime) / fRate;
/** 打印進(jìn)度條 */
printf("已復(fù)制 %.2f %% 還需要 %.1f 秒\n",fRate,nLastTime);
/** 復(fù)制完成之后,退出循環(huán) */
if (nSrcFileSize == nDestFileSize)
{
printf("復(fù)制完成,耗時 %d 秒\n",nUsedTime);
break;
}
}
}
return 0;
}
/** 得到文件的詳細(xì)信息 */
int getFileMsg(char* pchCmd,char *pchMsg)
{
FILE *fstream=NULL;
char szBuff[BUFSIZ] = {0};
char szExcueCommand[150] = {"ls -lh"};
sprintf(szExcueCommand,"%s %s",szExcueCommand,pchCmd);
if (NULL==(fstream=popen(szExcueCommand,"r")))
{
perror("execute command failed: ");
return -1;
}
/** 得到命令的結(jié)果 */
if (NULL == fgets(szBuff, sizeof(szBuff), fstream))
{
pclose(fstream);
return -1;
}
pclose(fstream);
strcpy(pchMsg,szBuff);
return 0;
}
Linux下執(zhí)行結(jié)果為:
./mycp bigfile destbigfile
cp bigfile destbigfile
已復(fù)制 3.00 % 還需要 32.3 秒
已復(fù)制 5.00 % 還需要 38.0 秒
已復(fù)制 8.00 % 還需要 34.5 秒
已復(fù)制 10.00 % 還需要 36.0 秒
已復(fù)制 12.00 % 還需要 36.7 秒
已復(fù)制 13.00 % 還需要 40.2 秒
已復(fù)制 14.00 % 還需要 43.0 秒
已復(fù)制 17.00 % 還需要 39.1 秒
已復(fù)制 20.00 % 還需要 36.0 秒
已復(fù)制 21.00 % 還需要 37.6 秒
已復(fù)制 24.00 % 還需要 34.8 秒
已復(fù)制 24.00 % 還需要 38.0 秒
已復(fù)制 27.00 % 還需要 35.1 秒
已復(fù)制 32.00 % 還需要 29.8 秒
已復(fù)制 33.00 % 還需要 30.5 秒
已復(fù)制 35.00 % 還需要 29.7 秒
已復(fù)制 38.00 % 還需要 27.7 秒
已復(fù)制 41.00 % 還需要 25.9 秒
已復(fù)制 42.00 % 還需要 26.2 秒
已復(fù)制 43.00 % 還需要 26.5 秒
已復(fù)制 44.00 % 還需要 26.7 秒
已復(fù)制 48.00 % 還需要 23.8 秒
已復(fù)制 50.00 % 還需要 23.0 秒
已復(fù)制 52.00 % 還需要 22.2 秒
已復(fù)制 53.00 % 還需要 22.2 秒
已復(fù)制 53.00 % 還需要 23.1 秒
已復(fù)制 57.00 % 還需要 20.4 秒
已復(fù)制 59.00 % 還需要 19.5 秒
已復(fù)制 61.00 % 還需要 18.5 秒
已復(fù)制 63.00 % 還需要 17.6 秒
已復(fù)制 63.00 % 還需要 18.2 秒
已復(fù)制 66.00 % 還需要 16.5 秒
已復(fù)制 69.00 % 還需要 14.8 秒
已復(fù)制 70.00 % 還需要 14.6 秒
已復(fù)制 72.00 % 還需要 13.6 秒
已復(fù)制 73.00 % 還需要 13.3 秒
已復(fù)制 75.00 % 還需要 12.3 秒
已復(fù)制 78.00 % 還需要 10.7 秒
已復(fù)制 79.00 % 還需要 10.4 秒
已復(fù)制 82.00 % 還需要 8.8 秒
已復(fù)制 83.00 % 還需要 8.4 秒
已復(fù)制 84.00 % 還需要 8.0 秒
已復(fù)制 87.00 % 還需要 6.4 秒
已復(fù)制 90.00 % 還需要 4.9 秒
已復(fù)制 91.00 % 還需要 4.5 秒
已復(fù)制 93.00 % 還需要 3.5 秒
已復(fù)制 93.00 % 還需要 3.5 秒
已復(fù)制 96.00 % 還需要 2.0 秒
已復(fù)制 99.00 % 還需要 0.5 秒
已復(fù)制 100.00 % 還需要 0.0 秒
復(fù)制完成,耗時 50 秒
解決方法
1、連接上相應(yīng)的linux主機(jī),進(jìn)入到等待輸入shell指令的linux命令行狀態(tài)下。
2、在linux命令行下輸入shell指令:history。
3、最后,按下回車鍵執(zhí)行shell指令,此時會看到所有使用過的命令都被逆序打印了出來。
注意事項:
語法:"命令 文件zd" ,這是將文件作為命令輸入。"命令 文件" ,這是將文件作為命令輸出。比如說:mail -s "test" linux@163.com aa ,就是將文件aa作為信件的內(nèi)容主題為test給收信人發(fā)去。
Linux它誕生于1991 年的 [Linux桌面] 10 月5 日(這是第一次正回式向外公布的時間)。以后借助于Internet網(wǎng)絡(luò),并通過全世界各地計算機(jī)愛好者的共同努力,已成為今天世界上使用最多的一種UNIX 類操作系統(tǒng),并且使用人數(shù)還在迅猛增長。
sed命令行格式:sed [options] 'command' file(s)
options常用選項:
-n或--quiet或——silent:僅顯示script處理后的結(jié)果;
-e:以選項中的指定的script來處理輸入的文本文件;
-f:以選項中指定的script文件來處理輸入的文本文件;
-r∶sed 的動作支援的是延伸型正規(guī)表示法的語法;
-i∶直接修改讀取的檔案內(nèi)容,而不是由螢?zāi)惠敵?
-h或--help:顯示幫助;
-V或--version:顯示版本信息。
Command常用命令:
a:新增,a 的后面可以接字符串,而這些字符串會在新的一行出現(xiàn)(目前的下一行);
c:取代,c 的后面可以接字符串,這些字符串可以取代 n1.n2 之間的行;
d:刪除,d 后面通常不接任何字符串;
i:插入,i 的后面可以接字符串,而這些字符串會在新的一行出現(xiàn)(目前的上一行);
p:列印,亦即將某個選擇的資料印出。通常 p 會與參數(shù) sed -n 一起運(yùn)作;
s:取代,可以直接進(jìn)行取代的工作,通常與正規(guī)表達(dá)式搭配使用。
實例說明:
新增操作:a命令
sed '/^bird/a\test' file將test追加到 以bird開頭的行后面
刪除操作:d命令
sed '/^$/d' file #刪除空白行;
sed '2d' file #刪除第二行;
sed '2.$d' file #刪除第2行到最后一行;
sed '$d' file #刪除最后一行;
sed '/^bird/'d file #刪除所有開頭是bird的行;
插入操作:i命令
sed -i '3i\bird ' bird.conf #在bird.conf文件第3行之前插入bird
替換文本中的字符串:s命令
sed 's/bird/birds/' file #將文本中的bird替換成birds;
sed -i 's/ bird / birds /g' file #將file文件中每一行的第一個bird替換為birds;
網(wǎng)頁名稱:linux命令行打印耗時,linux 打印時間
網(wǎng)頁網(wǎng)址:http://chinadenli.net/article40/hohcho.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、做網(wǎng)站、網(wǎng)站導(dǎo)航、網(wǎng)站建設(shè)、電子商務(wù)、微信公眾號
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)