我實驗了下, 和這兩個個符號,沒有作為單獨的參數處理,因為在作為參數傳遞給程序之前,已經提前被shell給解析并替換了。
創新互聯于2013年成立,是專業互聯網技術服務公司,擁有項目網站建設、網站制作網站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元沙河做網站,已為上家服務,為沙河各地企業和個人服務,聯系電話:028-86922220
簡單的例子:
#include stdio.h
#include stdlib.h
int main(int argc ,char *argv[])
{
printf("arguement0=%s\narguement1=%s\narguement2=%s\n",
argv[0],argv[1],argv[2]);
FILE *stream;
if((stream = fopen(argv[2],"r")) == NULL )
{
perror("cannot open file...\n");
exit(-1);
}
fclose(stream);
return 0;
}
然后執行,結果相當奇怪:
[ksl@myhost ~]$ ./a.out test2.c
arguement0=./a.out
arguement1=(null)
arguement2=SAL_USE_VCLPLUGIN=gtk
cannot open file...
: No such file or directory
再次執行:
[ksl@myhost ~]$ ./a.out test2.c
cannot open file...
: No such file or directory
我覺得a.out的輸出肯定是被定向到test2.c里面去了。。。再次驗證:
[ksl@myhost ~]$ cat test2.c
arguement0=./a.out
arguement1=(null)
arguement2=SAL_USE_VCLPLUGIN=gtk
果然...所以這個是和shell的工作有關的...
不過,我們還有辦法...利用這一點..剛才查了下
這里有說明
,說和這兩個符號把把stdin和stdout定向到了參數提供的文件...
不過,那不就更省事了,我們還不用打開文件了,直接讀取stdin和stdout不就得了 ...
程序修改成這樣:
#include stdio.h
#include stdlib.h
int main(int argc ,char *argv[])
{
char buf[128];
char *p=NULL;
while((p=fgets(buf,64,stdin))!=NULL) //打印下文件,看有效果沒....
printf("%s",p);
return 0;
}
編譯,換個文件再試試,就試試這個test.c吧:
[ksl@myhost ~]$ ./a.out test.c
#include stdio.h
#include stdlib.h
int main(int argc ,char *argv[])
{
char buf[128];
char *p=NULL;
while((p=fgets(buf,64,stdin))!=NULL)
printf("%s",p);
return 0;
}
so,搞定..... 順便重溫了下重定向...呵呵
如果你給root用戶設置了密碼的話用:mysql
-u
root
-p
"你的數據庫名"
“你的sql文件”,然后輸入密碼。
如果沒設置密碼的話直接mysql
-u
root
"你的數據庫名"
“你的sql文件”
mysql在linux命令行下導入txt文件
mysql導入txt的命令如下
但如果在終端中通過
登陸的話,輸入以上命令會報錯:
ERROR 1148 (42000): The used command is not allowed with this MySQL version
大家不要被報錯的表面翻譯給誤導了,這其實是個權限問題,解決方法如下
在通過終端輸入時,加上一個參數--local-infile = 1 詳細解釋請自行百度。
用下面語句登陸后再進行導入,就成功了
mysqlimport方法導入文件:
其實無論是load data還是mysqlimport,導入是事務,如果不是則設置引擎支持事務。
如何解決大文件導入?當有十幾甚至幾十G文件需要導入時,因為導入中間可能會失敗,如果一次性導入,導入失敗會導致回滾,代價太高,從幾十G文件中尋找問題也是很頭疼的事情。因此,需要先將大文件拆成小文件,比如split命令,按2萬行一個單位拆成小文件,以后綴編號區分,編寫腳本進行自動導入。如果發生的錯誤,只需要從小文件中定位問題即可。然后重啟導入腳本。
網頁名稱:Linux拷入資源命令 linux如何拷貝
標題URL:http://www.2m8n56k.cn/article48/dojiohp.html
成都網站建設公司_創新互聯,為您提供軟件開發、建站公司、外貿建站、品牌網站設計、電子商務、網站制作
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:[email protected]。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯