<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      windows批處理初學貼出一些命令

      在cmd窗口中復制時,右鍵選標記,然后再選擇此時選擇區域就變白了。然后要么直接拖到要粘貼的地方,要么直接按回車存到剪貼板里。

      1、循環導入文件夾下面的文件到數據庫中

      cd /d D:/Program Files/PostgreSQL/9.2/bin
      for /f "delims=" %%i in ('dir /b *.csv') do
      (
      echo '%%~dpi%%~nxi'>>all.txt
      psql -h 192.168.0.231 -U ***-d *** -p 5432 -c "\copy mrs_1 from '%%~dpi%%~nxi' with CSV header"
      )
      echo '導入數據結束!'
      pause

      為什么上面的都用的是雙%%?我一直是在命令行中敲的。發現倆%會報錯。才知道命令行中只需要一個百分號就行了。


      2、start 調用外部程序。該外部程序在新窗口運行,批處理程序繼續往下執行
      例 start explorer f:\
      call命令是用來調用具有bat或者cmd后綴的文件名。

       

      3、pushd和popd切換當前目錄

       

      4、md 創建一個文件夾。del刪除文件。rd刪除目錄。md是makedir的簡稱和md作用一樣。


      5、dir c:\|find "txt" 打印出c盤下的且包含txt的文件(夾)名


      6、echo test ^>1.txt
      結果則是:test > 1.txt 所以^是轉義字符。。^還可以用作續行符。


      7、這里&兩邊的命令是順序執行的,從前往后執行

      dir z:\ & dir y:\ & dir c:\ 當第一個命令執行失敗了,也不影響后邊的命令執行
      dir z:\ && dir y:\ && dir c:\ 第一個命令失敗時,后邊的命令也不會執行
      在dos下的copy a.txt b.txt /y 相當于將a.txt復制一份存為b.txt不加/y時如果原來存在b.txt會提示是否覆蓋b.txt的提示 還是得按y表示yes

       

      8、||這個命令的用法和&&幾乎一樣,但作用剛好相反:利用||執行多條命令時,當遇到一個執行正確的命令就退出此命令組合,不再繼續執行后面的命令

       

      9、知道別人主機的ip想知道其mac地址 用arp -a ip其實 nbtstat也可以看出來其mac地址nbtstat -A ip這個命令是用來查計算機名的(可以再電腦屬性更改的實名制名字)。
      (1)netstat命令是顯示協議統計信息和當前tcp/ip網絡連接的 加上-o后會多顯示一列即跟端口號對應的PID
      (2)tasklist /V 顯示的是進程名、端口號、內存使用、用戶名等具體信息。所以可以從netstat中找到pid然后用該pid在tasklist中找到進程名。
      (3)刪除某個進程:命令格式:ntsd -c q -p pid 按進程號殺;ntsd -c q -pn ***.exe 按進程名殺;taskkill /pid pid /f 按進程號殺。其中/f是強行殺掉的意思。

       

      10、IF命令
      (1)IF [NOT] ERRORLEVEL number command 當errorlevel為0時說明上一句命令的執行結果是正確的。
      有的資料上說 這種寫法指errorlevel >= 0時執行命令 若要等于0才執行則用if %errorlevel% == 0 (do something)

      (2)IF [NOT] string1==string2 command
      當比較string1和string2時如果不想區分大小寫那么就在if 后面加個/i

      (3)IF [NOT] EXIST filename command
      if中還有一些判斷數字大小的符號
      EQU - 等于 NEQ - 不等于 LSS - 小于 LEQ - 小于或等于 GTR - 大于 GEQ - 大于或等于
      我覺得還是直接用大于小于號方便。。。

      (4)對于if else語句得按下列格式
      IF EXIST filename (
      del filename
      ) ELSE (
      echo filename missing
      )
      這個例子里面有兩點必須遵守<1>左括號必須和if或者else在同一行。不然會報語法不正確的提示
      <2>else 必須和if中的最后一句在一行。。不然會報else不是內部或外部命令的提示。

       

      11、date 顯示當前日期,提示輸入新日期。如果只想看當前日期不想輸入新日期??梢?加個/t和time的用法一樣
      time /t 只顯示當前時間而不提示輸入新時間


      12、sort排序命令可以排文件可以排命令結果,一個是用 < 從文件讀,一個是用|排序前面命令的結果
      例sort < list.txt > alphlist.txt find "Jones" maillst.txt | sort
      sort輸出排序結果到文件中可以利用/o后面加文件 而不用重定向

       

      13、more命令:可以直接單獨用也可以在管道符后面用來一屏屏顯示命令結果
      more后面帶/s參數表示把多個空行輸出成一個空行
      more 后面的文件可以是多個按空格分開,它會一個文件接一個文件的顯示
      當使用more后會出來——More——這時要是輸入=號就會顯示現在顯示到第多少行了.按q會退出.按F會從下一個文件開始顯示.最基本的是空格顯示下一屏,回車顯示下一行

       

      14、find命令:
      find [/v] [/c] [/n] "string" [[drive:][path]filename[...]] 省略號表示可以在多個文件中查找
      參數
      /v 顯示未包含指定字符串的所有行。
      /c 只顯示包含指定字符串的行數。
      /n 將文件行號置于每行開頭。
      /I 指定搜索不區分大小寫。

       

      15、批處理的注釋:有兩種
      (1)rem 后面跟的是程序的注釋命令.
      (2)::也可以用作注釋,其實如果一個后面緊跟字母或者數字則是用于goto語句跳轉的地方,所以:后面跟非字母或數字都可以用作注釋。

       

      16、echo和@
      其中的echo off 和命令前加@,這倆命令如果在cmd窗口中輸就看不出來效果,只能看出來前面的盤符路徑\>不見了全是黑屏了。所以只有在bat文件中用上這倆命令才能看出來效果,因為在執行bat文件時,每一句命令都會先顯示在cmd窗口中然后再出來結果,所以這個時候echo off 或者前面加@就可以看出來只顯示執行結果而沒有命令顯示。
      echo off 將以后的命令屏蔽顯示,但它自身無法屏蔽,所以通常在echo off前面要加一個@

       

      17、PAUSE暫停鍵相當于c++里面的#include<stdlib> system(pause);
      運行顯示:
      請按任意鍵繼續. . .


      18、title 用來修改cmd窗口的名字。比如title houjiao 那個黑框的左上角名字就成houjiao了

       

      19、COLOR 后面由兩個連著的十六進制數字構成。第一個十六進制表示cmd窗口的背景顏色,第二個十六進制表示cmd窗口中
      0到7是由黑色、藍色、綠色、湖藍、紅色、紫色、黃色、白色
      8到F是對應的上述顏色的淡色版

       

      20、set這個命令不僅可以設置環境變量還可以設置自定義變量,還可以進行字符串處理是個硬角色。

      (1)set的用法SET [variable=[string]] 或者SET /P variable=[promptString]其中/p指的是promptstring是提示符而不是真正bariable的值。真正的值是需要用戶下來輸入的。跟scanf的作用一樣。那怎么樣設置一個變量用來進行表達式計算呢?用set /A variable+=1(相當于variable=variable+1) 這時會把等于號后面的當表達式而不是字符串。當定義變量后如果要用該變量則需要用%%將變量名夾在中間。
      當用/a時 如果等于號后面的是邏輯運算比如&時那不能直接用1&1而應該給&加上雙引號。上面的用法可以用一個例子表示set /p hj=please input expression 按回車后 輸入1"&"1 按回車后 set /a result=%hj% 再按回車。。就會看到結果。

      (2)用set處理字符串:
      <1>首先可以進行字符串替換 例如先初始化一個變量a:set a= bbs. verybat. cn
      將a中的空格刪掉 則可以set %a: =%就行了,解釋一下%a:str1=str2%就是把變量%a%的里的str1全部用str2替換.

      <2>其次可以進行字符串截斷 例如先初始化一個變量b:set b=bbs.verybat.cn字符串截斷的全部用法為下面5種可以將~當做截斷字符串的標志:
      %b:~1,2% =“bs” 偏移量1,從第二位開始向右取2 位
      %b:~-3% =“.cn” 從倒數第三位往后取完。
      %b:~3% =“.verybat.cn” 從正數第三位往后取完。(只有一個參數說明后面的參數默認為取到結尾)
      %b:~0,-3% =“bbs.verybat” 從開始取到倒數第三個。
      %b:~2,-3% =“s.verybat” 偏移為2,從第三個開始取到倒數第三個。

       

      21、變量延遲
      假設有這么個bat
      @echo off
      set a=4
      set a=5 & echo %a%
      pause
      那么結果是4。。。而不是五。這就是變量延遲。指的是變量的值只從該一行命令上面的賦值得來。
      至于為什么我也不知道。。所以這時候需要啟用變量延遲,固定的命令是這么寫的setlocal enabledelayedexpansion要結束變量延遲則用 endlocal就可以。

       

      22、各種符號
      其中逗號、分號都是和空格的作用一樣,沒事就別用這些了空格就夠了我覺得,而感嘆號是在變量延遲問題中用來包變量的。即把%a%寫成!a!可是我在開啟變量延遲之后還是用的%a%也沒有錯,
      反而!a!報錯。。不知道為啥了反正以后都用百分號就行了。
      小括號中的命令會被看成是一條命令。可以在for語句和if語句中使用也可以單獨使用。
      雙引號是字符串界定符加上雙引號字符串中就可以加空格之類的。

       

      23、for循環

      格式:FOR 參數 %%變量名 IN (SET) DO 執行的命令
      其中SET指的是相關文件或命令命令用單引號括起來,相關文件用字符串括起來。
      for的參數有4個分別為/d /r /l /f
      (1)/d 參數:在SET中有通配符*或?時,只是循環執行SET中的文件夾名字而不會執行文件夾中的文件。

      (2)/r 參數:這個參數后面得加目錄,同樣當SET中有通配符時他會把/r 后面指定的目錄及其下面的所有子目錄中與set相符合的所有文件名都列舉出來。但是/r 在set中沒有通配符時還會做操作就是將所有含有該文件的目錄都列出來。例如for /r c:\ %%i in (*.exe) do echo %%i

      (3)/l參數:其中的SET就需要換成三個用逗號隔開的數字分別代表start,step,end。表示從數字start開始到end結束步長為step來設置變量。比如for /l %%i in (1,1,5) do start cmd就會打開5個cmd窗口。

      (4)/f參數:這個參數是讀取文件中最常用的一個也是最復雜的一個
      FOR /F ["options"] %variable IN (file-set) DO command [command-parameters]其中file-set是文件名不能有空格
      FOR /F ["options"] %variable IN ("string") DO command [command-parameters]其中string表示字符串
      FOR /F ["options"] %variable IN ('command') DO command [command-parameters]單引號表示執行命令

      option有5個參數用一個例子來說明就是
      FOR /F "usebackq eol=; tokens=1,3* delims=, " %%i in ("program files") do echo %%i %%j %%k
      其中usebackq參數表示后面雙引號引的是文件名而不是字符串。
      eol=;表示跳過以分號開頭的行不讀。
      tokens=1,3* 表示按照后面的逗號和空格將一行分為若干段,將第一段賦值給%%i,將第三段賦值給%%j,將后面所有的段賦值給%%k。
      delims=, 表示按,和 分割行,其中的空格必須放在最后,否則會報錯。那個*還可以寫成4-10意思是第四段到第十段。

      在for中變量可以替換為一些其他的寫法,作用也不一樣,具體的for /? 然后再最后面一屏會看到。經常用的是倆%~dpi其中i是for本來的變量。意思是將%i擴充到一個驅動器號和路徑。如果原來%i是一個文件,則你echo 后就會顯示哪個盤哪個目錄下的文件。

       后續學到其他的再進行總結補充。                                                                                                                    -jimmy-hou-

       

      posted @ 2013-11-01 12:23  風猴藍魔  閱讀(991)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 无码人妻精品一区二区三区蜜桃| 国产中文字幕在线精品| 日本一区二区三区后入式| 久久亚洲精品无码播放| 亚洲第一国产综合| 久久无码中文字幕免费影院蜜桃| 蜜臀午夜一区二区在线播放| 久久综合综合久久综合| 国产福利社区一区二区| 国产偷自视频区视频| 欧美一区二区三区欧美日韩亚洲| 蜜臀久久精品亚洲一区| 久久99精品久久久久久齐齐 | 久久中文字幕日韩无码视频| 日韩不卡二区三区三区四区| 国产精品高潮无码毛片| 洪湖市| 涩涩爱狼人亚洲一区在线| 在线国产你懂的| 中文字幕精品亚洲二区| 久爱www人成免费网站| 最新的国产成人精品2022| 成人欧美一区二区三区在线观看| 内射无套内射国产精品视频| 国产永久免费高清在线观看| 久久久久久久久毛片精品| 昆山市| 一区二区中文字幕久久| 国产高清在线精品一区二区三区| 黄色网站免费在线观看| 日韩在线视频网| 永久免费无码网站在线观看| 中文字幕国产精品一二区| 国产性色的免费视频网站| 性欧美牲交在线视频| 啦啦啦视频在线日韩精品| 越南毛茸茸的少妇| 亚洲性日韩精品一区二区| 国产一区二区高清不卡| 成人午夜免费无码视频在线观看 | 在线国产你懂的|