linux 下獲取當(dāng)前工作路徑的實例
獲取工作路徑這里介紹兩種方法:
1.使用getcwd()函數(shù)。
頭文件:#include <unistd.h>
定義函數(shù):char * getcwd(char * buf, size_t size);
函數(shù)說明:getcwd()會將當(dāng)前的工作目錄絕對路徑復(fù)制到參數(shù)buf 所指的內(nèi)存空間,參數(shù)size 為buf 的空間大小
實例:
void getPath()
{
char pPath[256] = {0};
getcwd(buf, 256);
printf("filePath: %s\n", pPath);
}
主函數(shù)調(diào)用此函數(shù)運行結(jié)果:
filePath: /home/myTest
2.使用readlink()函數(shù)。
頭文件:#include <unistd.h>
函數(shù)定義:int readlink(const char *path, char *buf, size_t bufsiz);
函數(shù)說明:此函數(shù)會將參數(shù)path的符號連接內(nèi)容到參數(shù)buf所指的內(nèi)存空間,返回的內(nèi)容不是以NULL作字符串結(jié)尾,但會將字符串的字符數(shù)返回。若參數(shù)bufsiz小于符號連接的內(nèi)容長度,過長的內(nèi)容會被截斷。成功返回buf長度,失敗返回 -1.
實例:
void getPath()
{
char pPath[256] = {0};
int ret = -1;
ret = readlink("/proc/self/exe", pPath, 256);
pPath[ret] = "\0"
printf("the file Path: %s\n", pPath);
}
int main()
{
getPath();
}
運行結(jié)果:
the file Path: /home/myTest/a.out
以上這篇linux 下獲取當(dāng)前工作路徑的實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
shell腳本中執(zhí)行時提示“沒有那個文件或目錄”的解決辦法
故障現(xiàn)象:在終端直接cd /var正常,在shell腳本中執(zhí)行則報錯。原因是腳本是在windows平臺下寫的,換行符與linux不同,造成腳本不能正確執(zhí)行2014-04-04
用Shell判斷字符串包含關(guān)系的方法小結(jié)
這篇文章主要給大家介紹了關(guān)于用Shell判斷字符串包含關(guān)系的幾種方法,其中包括利用grep查找、利用字符串運算符、利用通配符、利用case in 語句以及利用替換等方法,每個方法都給出了詳細的示例代碼與介紹,有需要的朋友們可以參考參考借鑒,下面來一起看看吧。2016-12-12

