當前位置:首頁 » 編程軟體 » c使用腳本

c使用腳本

發布時間: 2023-08-25 17:05:48

⑴ 如何在C 中用程序執行指定的sql腳本文件,實

1、用cmd命令打開DOS命令行窗口

2、用sqlplus命令進入SQL命令狀態,命令行如下:c:\sqlplus/nolog

3、用如下命令連接資料庫:connect 資料庫用戶名/密碼@sid_ip,如:sql>connectionljm/ljm@ljm_localhost(本機資料庫)

4、用如下命令執行腳本文件sql>@完整路徑文件名

5、如果要導入SEQUENCE的話,可以用toad工具先生成SEQ腳本文件,再用如上命令導入

⑵ 在c\c++程序里怎麼執行shell腳本命令

在C/C++源碼中執行shell命令,最基本的就是system()C庫函數,其次可以使用系統提供的api函數,比如windows上的createprocess shellexecuteex等函數,在linux上可以使用exec()等等.

下面是我在windows上的弄的一個測試版本,使用了線程,我感覺用nc來測試,不如直接netstat -an | findstr /I "udp" | findstr "22" ,因為22埠太其特了,很容易抓出來.另外nc判斷埠常規的作法就是nc -vv ip port 看提示信息就好了.

#include <stdio.h>
#include <stdlib.h>
#include <tchar.h>
#include <windows.h>
#include <process.h>
UINT __stdcall ThreadFunc(LPVOID lpParam) {
//將hacker字元串做為nc提交的數據
int ret = system("echo hacker | nc.exe -u 127.1 22");
//ret==0說明沒有開啟22埠
if (ret == 0 ) printf("nc: Write error: Connection refused.\n");
return 0;
}
int main()
{
HANDLE hThread = (HANDLE)_beginthreadex(0, 0, ThreadFunc, 0, 0, 0);
//等待3秒鍾,說明22埠可用
WaitForSingleObject(hThread, 3000);
//結束測試線程
TerminateThread(hThread, 0);
//重新開啟NC連接22埠
system("nc.exe -vv -u 127.1 22");
return 0;
}

歡迎光臨0x30貼吧,一個高質量的計算機技術交流平台.

c語言能否用在shell腳本

C語言可以通過system()調用執行外部shell腳本,但shell腳本里不能直接執行C代碼。
因為shell腳本是解釋執行的,C代碼只能被C編譯器認可,需要編譯成可執行文件後才能在shell腳本中調用。
awk文本處理工具里的環境基本是C語法,所以如果shell腳本里使用awk,那麼是可以直接用C語法的。

⑷ 怎麼在c語言程序里調用shell腳本文件

system(「這里是你要執行的腳本文件的絕對位置或者相對位置」);

⑸ 如何在C語言中調用shell命令

在C語言中調用shell命令的方法實現。
C程序調用shell腳本共有兩種方法 :system()、popen(),分別如下:
system()
不用自己去創建進程,系統已經封裝了這一步,直接加入自己的命令即可
popen() 也可以實現執行的命令,比system
開銷小
以下分別說明:
1)system(shell命令或shell腳本路徑);
system()
會調用fork()產生 子歷程,由子歷程來調用/bin/sh-c string來履行 參數string字元串所代表的命令,此命令履行
完後隨即返回原調用的歷程。在調用system()期間SIGCHLD 信號會被暫時擱置,SIGINT和SIGQUIT 信號則會被漠視 。

回值:如果system()在調用/bin/sh時失敗則返回127,其他失敗原因返回-1。若參數string為空指針(NULL),則返回非零值。 如果
system()調用成功 則最後會返回履行 shell命令後的返回值,但是此返回值也有可能為system()調用/bin/sh失敗所返回的127,因
此最好能再反省 errno 來確認履行 成功 。
system命令以其簡略
高效的作用得到很很廣泛 的利用 ,下面是一個例子
例:在/tmp/testDir/目錄下有shell腳本tsh.sh,內容為

#!/bin/sh
wget $1
echo "Done!"
2)popen(char
*command,char *type)
popen()
會調用fork()產生 子歷程,然後從子歷程中調用/bin/sh -c來履行 參數command的指令。參數type可應用
「r」代表讀取,「w」代表寫入。遵循此type值,popen()會建立 管道連到子歷程的標准 輸出設備 或標准 輸入設備
,然後返回一個文件指針。隨後歷程便可利用 此文件指針來讀取子歷程的輸出設備 或是寫入到子歷程的標准 輸入設備 中。此外,所有應用 文
件指針(FILE*)操作的函數也都可以應用 ,除了fclose()以外。
返回值:若成功
則返迴文件指針,否則返回NULL,差錯 原因存於errno中。注意:在編寫具SUID/SGID許可權的程序時請盡量避免應用
popen(),popen()會繼承環境變數,通過環境變數可能會造成系統安全的問題。
例:C程序popentest.c內容如下:
#include<stdio.h>
main
{
FILE * fp;
charbuffer[80];
fp=popen(「~/myprogram/test.sh」,」r」);
fgets(buffer,sizeof(buffer),fp);
printf(「%s」,buffer);
pclose(fp);
}

⑹ C語言不屬於腳本語言可是能不能用來寫腳本呢

不行的,腳本是一種文本,可以用記事本編寫,是十進制,不需要編譯器編譯成計算機能識別的二進制。而c語言用編譯器來編寫,將十進制轉換為二進制。況且腳本語法和c語言不同,但腳本和vb有關聯,如果你要學腳本,先去理解下vb語法

⑺ 如何在C語言中調用腳本

用system
比如 腳本名字是a.sh的話
那麼就是
system("./a.sh");

⑻ 在C語言編程如何新建腳本、調用給個具體的簡單例子

樓主不要混淆腳本的概念····如果是腳本的話
就是命令行指令,或者腳本語言保存的代碼。腳本一般為解釋性語言,即不需要編譯鏈接,而直接逐行執行代碼的語言。C語言不是腳本語言。

電話號碼嘛··隨機生成,這個不錯,有點復雜的說。我是說隨機數像電話號碼的情況。比較復雜。

你需要一個hashlist庫。
一個生成用戶名的方法,一個生成電話號碼的方法。
和一個記錄顯示的方法。
有了這些很簡單了。

初始化哈希表
//如果同時生成記錄和讀取記錄的話要用到多線程了
//可以先讀取:
打開文件:
loop:
讀取一條記錄
store as key & value in hashlist
loopend
生成記錄 保存
寫入文件

熱點內容
安卓快手圖片怎麼弄 發布:2024-11-20 21:10:21 瀏覽:80
linuxtomcat內存 發布:2024-11-20 20:56:28 瀏覽:775
小米5s存儲卡 發布:2024-11-20 20:48:48 瀏覽:14
互聯網宣傳片腳本 發布:2024-11-20 20:47:09 瀏覽:993
穿越火線伺服器ip地址和埠 發布:2024-11-20 19:59:43 瀏覽:701
李鴻章環球訪問 發布:2024-11-20 19:54:07 瀏覽:197
方舟聯機伺服器怎麼發育 發布:2024-11-20 19:53:15 瀏覽:937
蘋果手機怎麼設計密碼 發布:2024-11-20 19:53:13 瀏覽:181
一個伺服器可以搭建多少游戲 發布:2024-11-20 19:43:56 瀏覽:971
哈希函數c語言 發布:2024-11-20 19:43:03 瀏覽:744