2018-12-12 14:43:03 1260瀏覽
Linux開發(fā)技術(shù)如今在各大公司企業(yè)中備受企業(yè)的重視,所以對Linux開發(fā)人員也是非??粗械?,所以如今參加Linux培訓(xùn)學(xué)習(xí)Linux開發(fā)技術(shù)的小伙伴有很多。本篇文章小編和大家分享一篇Linux技術(shù)問題,那就是Linux下如何獲取當前工作路徑,喜歡的小伙伴就隨小編來看一下吧,希望對大家有所幫助。
獲取工作路徑這里介紹兩種方法:
1、使用getcwd()函數(shù)。
頭文件:#include
定義函數(shù):char * getcwd(char * buf, size_t size);
函數(shù)說明:getcwd()會將當前的工作目錄絕對路徑復(fù)制到參數(shù)buf 所指的內(nèi)存空間,參數(shù)size 為buf 的空間大小。
實例:
主函數(shù)調(diào)用此函數(shù)運行結(jié)果:
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。
實例:
運行結(jié)果:
void getPath()
{
char pPath[256] = {0};
getcwd(buf, 256);
printf("filePath: %s\n", pPath);
}
filePath: /home/myTest
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();
}
the file Path: /home/myTest/a.out
以上就是扣丁學(xué)堂Linux在線學(xué)習(xí)小編給大家分享的Linux下如何獲取當前工作路徑,希望對小伙伴們有所幫助,想要了解更多內(nèi)容的小伙伴可以登錄扣丁學(xué)堂官網(wǎng)咨詢。想要學(xué)好Linux開發(fā)小編給大家推薦口碑良好的扣丁學(xué)堂,扣丁學(xué)堂有專業(yè)老師制定的Linux學(xué)習(xí)路線圖輔助學(xué)員學(xué)習(xí),此外還有與時俱進的Linux視頻教程供大家學(xué)習(xí),想要學(xué)好Linux開發(fā)技術(shù)的小伙伴快快行動吧??鄱W(xué)堂Linux技術(shù)交流群:422345477。
【關(guān)注微信公眾號獲取更多學(xué)習(xí)資料】
查看更多關(guān)于“Linux培訓(xùn)資訊”的相關(guān)文章>>