cd,顯示當前目錄的名稱或切換目錄位置
成都創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供沙灣網(wǎng)站建設(shè)、沙灣做網(wǎng)站、沙灣網(wǎng)站設(shè)計、沙灣網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、沙灣企業(yè)網(wǎng)站模板建站服務(wù),十載沙灣做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。
錯誤用法:cd d:
正確用法:d:(直接輸入盤符即可)
cd music?切換到?當前目錄/music/
cd c:\xxx?用絕對路徑切換。
cd ..?切換到上一級目錄
cd /?切換到盤符根目錄
切換盤符,比如從c盤切換到d盤
擴展資料
常見命令
dir,列出當前文件夾下所有文件
md,創(chuàng)建文件夾
md c:\xxx?創(chuàng)建 xxx 文件夾
ren?重命名文件、文件夾
ren a b,將文件夾a改為b
rd?刪除目錄
del?刪除文件
move?移動文件
copy?復(fù)制文件
參考資料:百度百科 - 命令提示符
Go CD 是屬于在持續(xù)集成,持續(xù)交付過程中使用的自動化構(gòu)建工具,可以執(zhí)行編譯,自動化測試,自動部署等等。
在此之前,已經(jīng)使用過Jenkins工具了,Go CD 的功能和Jenkins差不多,但又有其特點。
task是要執(zhí)行的一個build任務(wù),一般是一個命令行指令
一個Pipeline由多個stage組成,stage按順序執(zhí)行,若是一個stage執(zhí)行失敗了,那么該pipeline也被認為是失敗的,并且之后的stage不會繼續(xù)執(zhí)行。
直接嵌入c源代碼到go代碼里面
package main
/*
#include stdio.h
void myhello(int i) {
printf("Hello C: %d\n", i);
}
*/
import "C"
import "fmt"
func main() {
C.myhello(C.int(12))
fmt.Println("Hello Go");
}
需要注意的是C代碼必須放在注釋里面
import "C"語句和前面的C代碼之間不能有空行
運行結(jié)果
$ go build main.go ./main
Hello C: 12
Hello Go
分開c代碼到單獨文件
嵌在一起代碼結(jié)構(gòu)不是很好看,很多人包括我,還是喜歡把兩個分開,放在不同的文件里面,顯得干凈,go源文件里面是go的源代碼,c源文件里面是c的源代碼。
$ ls
hello.c hello.h main.go
$ cat hello.h
void hello(int);
$ cat hello.c
#include stdio.h
void hello(int i) {
printf("Hello C: %d\n", i);
}
$ cat main.go
package main
// #include "hello.h"
import "C"
import "fmt"
func main() {
C.hello(C.int(12))
fmt.Println("Hello Go");
}
編譯運行
$ go build ./main
Hello C: 12
Hello Go
編譯成庫文件
如果c文件比較多,最好還是能夠編譯成一個獨立的庫文件,然后go來調(diào)用庫。
$ find mylib main
mylib
mylib/hello.h
mylib/hello.c
main
main/main.go
編譯庫文件
$ cd mylib
# gcc -fPIC -shared -o libhello.so hello.c
編譯go程序
$ cd main
$ cat main.go
package main
// #cgo CFLAGS: -I../mylib
// #cgo LDFLAGS: -L../mylib -lhello
// #include "hello.h"
import "C"
import "fmt"
func main() {
C.hello(C.int(12))
fmt.Println("Hello Go");
}
$ go build main.go
運行
$ export LD_LIBRARY_PATH=../mylib
$ ./main
Hello C: 12
Hello Go
在我們的例子中,庫文件是編譯成動態(tài)庫的,main程序鏈接的時候也是采用的動態(tài)庫
$ ldd main
linux-vdso.so.1 = (0x00007fffc7968000)
libhello.so = ../mylib/libhello.so (0x00007f513684c000)
libpthread.so.0 = /lib64/libpthread.so.0 (0x00007f5136614000)
libc.so.6 = /lib64/libc.so.6 (0x00007f5136253000)
/lib64/ld-linux-x86-64.so.2 (0x000055d819227000)
理論上講也是可以編譯成整個一靜態(tài)鏈接的可執(zhí)行程序,由于我的機器上缺少靜態(tài)鏈接的系統(tǒng)庫,比如libc.a,所以只能編譯成動態(tài)鏈接。
是Go語言嗎?
Go 編譯過程 九個步驟
第一步. all.bash
% cd $GOROOT/src
% ./all.bash
第一步 all.bash 只是調(diào)用了另外兩個 shell 腳本:make.bash 和run.bash。若使用 Windows 或 Plan9,其過程也基本類似,只是腳本分別以 .bat 或 .rc 結(jié)尾。在文章的其他部分,請用適當?shù)牟僮飨到y(tǒng)對應(yīng)的擴展來補全命令。
第二步. make.bash
. ./make.bash --no-banner
make.bash 作為 all.bash 內(nèi)容的一部分,如果它退出也會中斷構(gòu)建過程
第三步. cmd/dist
gcc -O2 -Wall -Werror -ggdb -o cmd/dist/dist -Icmd/dist cmd/dist/*.c
當健全檢查完成后,make.bash 開始編譯 cmd/dist。
第四步. go_bootstrap
現(xiàn)在 go_bootstrap 已經(jīng)構(gòu)建完成,make.bash 的最后一步是使用 go_bootstrap 編譯完整的 Go 標準庫,包括一個完整的 go 工具用以替換。
echo "# Building packages and commands for $GOOS/$GOARCH."
"$GOTOOLDIR"/go_bootstrap install -gcflags "$GO_GCFLAGS" \
-ldflags "$GO_LDFLAGS" -v std
第五步. run.bash
現(xiàn)在 make.bash 已經(jīng)完成,回到 all.bash 的執(zhí)行,這會調(diào)用 run.bash。run.bash 的任務(wù)是編譯和測試標準庫、運行時以及語言測試集。
bash run.bash --no-rebuild
由于 make.bash 和 run.bash 都會調(diào)用 go install -a std,因此需要使用 –no-rebuild 標志來避免重復(fù)前面的步驟,–no-rebuild 跳過了第二個 go install。
# allow all.bash to avoid double-build of everythingrebuild=trueif [ "$1" = "--no-rebuild" ]; then shiftelse echo '# Building packages and commands.' time go install -a -v std echofi
第六步. go test -a std
echo '# Testing packages.'
time go test std -short -timeout=$(expr 120 \* $timeout_scale)s
echo
接下來 run.bash 會在標準庫里所有的包上來運行用 testing 包編寫的單元測試。由于 $GOPATH 和 $GOROOT 中有著相同的命名空間,所以不能直接使用 go test … 否則 $GOPATH 中的每個包也會被逐一測試,因此創(chuàng)建了一個用于標準庫中的包的別名:std。由于一些測試需要比較長的時間,且會消耗大量內(nèi)存,因此用 -short 標志對一些測試進行了過濾。
第七步. runtime 和 cgo 測試
run.bash 接下來的部分會運行平臺對 cgo 支持的測試,執(zhí)行一些性能測試,并且編譯一些伴隨 Go 發(fā)行版一起的雜項程序。隨著時間的流逝,這些雜項程序的清單會越來越長,那么它們也就會不可避免的被從編譯過程中悄悄剝離出去。
第八步. go run test
(xcd ../test
unset GOMAXPROCS
time go run run.go
) || exit $?
run.bash 的倒數(shù)第二步會調(diào)用在 $GOROOT 下的 test 目錄里的編譯器和運行時的測試。他們是對于編譯器和運行時自身的,較為低級細節(jié)的測試。會執(zhí)行語言規(guī)格測試,test/bugs 和 test/fixedbugs 子目錄保存有那些已經(jīng)被發(fā)現(xiàn)并被修復(fù)的問題的獨立的測試。驅(qū)動測試的是一個小 Go 程序 $GOROOT/test/run.go,會執(zhí)行 test 目錄里的每個 .go 文件。一些 .go 文件的首行包含了指導(dǎo) run.go 對結(jié)果作出判斷的指令,例如,程序?qū)。蛱峁┮粋€確定的輸出隊列。
第九步. go tool api
echo '# Checking API compatibility.'
go tool api -c $GOROOT/api/go1.txt,$GOROOT/api/go1.1.txt \
-next $GOROOT/api/next.txt -except $GOROOT/api/except.txt
run.bash 的最后一步調(diào)用了 api 工具。
需要準備的工具:電腦,Windows 操作系統(tǒng)。
1、首先,當我們打開命令提示符窗口以后,如果想查看 cd 命令的用法,可以鍵入以下命令:cd /?
2、回車之后,我們就可以看到 cd 命令的詳細用法了。下面,我們就來分別講述之。
3、如果要進入的路徑在同一個磁盤分區(qū),則可以用以下語法:cd 路徑比如,我要進入當前目錄下的 Links 目錄,就輸入:cd links在此需要提醒大家的是,在 DOS 下命令是不區(qū)分大小寫的。
4、而如果想返回當前目錄的上一級目錄(即它的父目錄),則可以鍵入命令:cd ..這里的 .. 就代表了當前目錄的上一級目錄。
5、另外,如果要切換的路徑與當前目錄不在同一個磁盤分區(qū),則需要采用如下語法:cd /D 路徑也就是在原來命令的基礎(chǔ)上加一個參數(shù) /D。
6、還有一點需要說明的是,在大多數(shù) DOS 命令中,如果參數(shù)中出現(xiàn)了空格,是需要用雙引號括起來的,但在 cd 命令中不用。這是因為,cd 命令從不把空格當成分隔符。因此,當使用 cd 命令時,如果參數(shù)中有空格,加不加雙引號效果都是一樣的。
7、最后,使用 cd 命令時,如果想從子目錄一步切換到磁盤的根目錄,只需鍵入:cd \在這里,\ 符號就代表了該磁盤分區(qū)下的根目錄。
當前文章:go語言cd的用法,c語言調(diào)用go
URL分享:http://www.chinadenli.net/article20/dseoijo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號、網(wǎng)站排名、網(wǎng)站制作、響應(yīng)式網(wǎng)站、定制網(wǎng)站、網(wǎng)站建設(shè)
聲明:本網(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)