導航:首頁 > 程序命令 > 命令式交互

命令式交互

發布時間:2022-06-27 08:14:36

1. 如何使用 Node.js 開發互動式命令行應用程

工作中打造一款屬於自己的命令行工具,很多時候可以很大程度上減少重復工作提高開發效率,簡單介紹一下開發一個命令行工具的步驟。

拿快速構建前端項目腳手架為例:

主要開發步驟:

1.創建項目

$ npm init
name: (app-cli)
version: (1.0.0)
description: A command-line tool for creating a custom project
entry point: (index.js)
author:
license: (MIT)

會生成一個package.json文件,在該文件中添加一個bin欄位,
bin欄位的key就是你的命令,value指向相對於package.json的路徑,
不同的key對應不同的命令。關於 bin 欄位更多信息請參考 npm 文檔中 package.json 一節。

{ "name": "app-cli", "version": "1.0.0", "description": "A command-line tool for creating a custom project", "bin":{ "createApp":"/bin/index.js"
}, "main": "index.js", "author": "", "license": "MIT"}

2.創建bin/index.js文件

#!/usr/bin/env node console.log('Hello, world!');

注意要添加shebang 來指定腳本運行環境

3.測試
開發時為了方便調試,可以全局執行命令,需要把開發模塊鏡像到全局,在開發目錄中執行命令:

npm link

{userpath}AppDataRoaming pmcreateapp -> {userpath}AppDataRoaming pm ode_molesapp-cliinindex.js
{userpath}AppDataRoaming pm ode_molesapp-cli -> {userpath}myprojectapp-cli
$ createapp
Hello, world!

這樣就可以方便調試代碼了。

命令行工具常用模塊介紹:

2. 怎樣在shell程序中處理互動式命令

用相應命令的交互使用參數不就可以了嗎?
su :
su - username -c "command"
passwd:
echo "newpasswd"|passwd user --stdin
大部分需要交互使用的命令都有非交互參數,使用前先看看man ,實在沒有的才需要expect

3. 在cad系統中,互動式命令驅動方式有哪幾種

autocad命令大全[REPLYVIEW] 3DARRAY:創建三維陣列 3A3DFACE:創建三維面 3F3DORBIT:控制在三維空間中互動式查看對象 3DO3DPOLY:在三維空間中使用「連續」線型創建由直線段組成的多段線 3PADCENTER:管理內容 ADCALIGN:在二維和三維空間中將某對象與其他對象對齊 ALAPPLOAD:載入或卸載應用程序並指定啟動時要載入的應用程序 APARC:創建圓弧 AAREA:計算對象或指定區域的面積和周長 AAARRAY:創建按指定方式排列的多重對象副本 ARATTDEF:創建屬性定義 ATTATTEDIT:改變屬性信息 ATEATTEXT:提取屬性數據 DDATTEXTBHATCH:使用圖案填充封閉區域或選定對象 H、BHBLOCK:根據選定對象創建塊定義 BBOUNDARY:從封閉區域創建面域或多段線 BOBREAK:部分刪除對象或把對象分解為兩部分 BRCHAMFER:給對象的邊加倒角 CHA CHANGE:修改現有對象的特性 -CHCIRCLE:創建圓形 CCOLOR:定義新對象的顏色 COLCOPY:復制對象 CO、CPDBCONNECT:為外部資料庫表提供 AutoCAD 介面 AAD、AEX、ALI、ASQ、ARO、ASE、DBCDDEDIT:編輯文字和屬性定義 EDDDVPOINT:設置三維觀察方向 VPDIMALIGNED:創建對齊線性標注 DALDIMANGULAR:創建角度標注 DANDIMBASELINE:從上一個或選定標注的基線處創建線性、角度或坐標標注 DBADIMCENTER:創建圓和圓弧的圓心標記或中心線 DCEDIMCONTINUE:從上一個或選定標注的第二尺寸界線處創建線性、角度或坐標標注 DCODIMDIAMETER:創建圓和圓弧的直徑標注 DDIDIMEDIT:編輯標注 DEDDIMLINEAR:創建線性尺寸標注 DLIDIMORDINATE:創建坐標點標注 DORDIMOVERRIDE:替代標注系統變數 DOVDIMRADIUS:創建圓和圓弧的半徑標注 DRADIMSTYLE:創建或修改標注樣式 DDIMTEDIT:移動和旋轉標注文字 DIMTEDDIST:測量兩點之間的距離和角度 DIDIVIDE:將點對象或塊沿對象的長度或周長等間隔排列 DIVDONUT:繪制填充的圓和環 DODRAWORDER:修改圖像和其他對象的顯示順序 DRDSETTINGS:指定捕捉模式、柵格、極坐標和對象捕捉追蹤的設置 DS、RM、SEDSVIEWER:打開「鳥瞰視圖」窗口 AVDVIEW:定義平行投影或透視視圖 DVELLIPSE:創建橢圓或橢圓弧 ELERASE:從圖形中刪除對象 EEXPLODE:將組合對象分解為對象組件 XEXPORT:以其他文件格式保存對象 EXPEXTEND:延伸對象到另一對象 EXEXTRUDE:通過拉伸現有二維對象來創建三維原型 EXTFILLET:給對象的邊加圓角 FFILTER:創建可重復使用的過濾器以便根據特性選擇對象 FIGROUP:創建對象的命名選擇集 GHATCH:用圖案填充一塊指定邊界的區域 -HHATCHEDIT:修改現有的圖案填充對象 HEHIDE:重生成三維模型時不顯示隱藏線 HIIMAGE:管理圖像 IMIMAGEADJUST:控制選定圖像的亮度、對比度和褪色度 IADIMAGEATTACH:向當前圖形中附著新的圖像對象 IATIMAGECLIP:為圖像對象創建新剪裁邊界 ICLIMPORT:向 AutoCAD 輸入文件 IMPINSERT:將命名塊或圖形插入到當前圖形中 IINTERFERE:用兩個或多個三維實體的公用部分創建三維復合實體 INFINTERSECT:用兩個或多個實體或面域的交集創建復合實體或面域並刪除交集以外的部分ININSERTOBJ:插入鏈接或嵌入對象 IOLAYER:管理圖層和圖層特性 LA-LAYOUT:創建新布局,重命名、復制、保存或刪除現有布局 LOLEADER:創建一條引線將注釋與一個幾何特徵相連 LEADLENGTHEN:拉長對象 LENLINE:創建直線段 LLINETYPE:創建、載入和設置線型 LTLIST:顯示選定對象的資料庫信息 LI、LSLTSCALE:設置線型比例因子 LTSLWEIGHT: LWMATCHPROP:設置當前線寬、線寬顯示選項和線寬單位 MAMEASURE:將點對象或塊按指定的間距放置 MEMIRROR:創建對象的鏡像副本 MIMLINE:創建多重平行線 MLMOVE:在指定方向上按指定距離移動對象 MMSPACE:從圖紙空間切換到模型空間視口 MSMTEXT:創建多行文字 T、MTMVIEW:創建浮動視口和打開現有的浮動視口 MVOFFSET:創建同心圓、平行線和平行曲線 OOPTIONS:自定義 AutoCAD 設置 GR、OP、PROSNAP:設置對象捕捉模式 OSPAN:移動當前視口中顯示的圖形 PPASTESPEC:插入剪貼板數據並控制數據格式 PAPEDIT:編輯多段線和三維多邊形網格 PEPLINE:創建二維多段線 PLPRINT :將圖形列印到列印設備或文件 PLOTPOINT:創建點對象 POPOLYGON:創建閉合的等邊多段線 POLPREVIEW:顯示列印圖形的效果 PREPROPERTIES:控制現有對象的特性 CH、MOPROPERTIESCLOSE:關閉「特性」窗口 PRCLOSEPSPACE:從模型空間視口切換到圖紙空間 PSPURGE:刪除圖形資料庫中沒有使用的命名對象,例如塊或圖層 PUQLEADER:快速創建引線和引線注釋 LEQUIT:退出 AutoCAD EXITRECTANG:繪制矩形多段線 RECREDRAW:刷新顯示當前視口 RREDRAWALL:刷新顯示所有視口 RAREGEN:重生成圖形並刷新顯示當前視口 REREGENALL:重新生成圖形並刷新所有視口 REAREGION:從現有對象的選擇集中創建面域對象 REGRENAME:修改對象名 RENRENDER:創建三維線框或實體模型的具有真實感的渲染圖像 RRREVOLVE:繞軸旋轉二維對象以創建實體 REVRPREF:設置渲染系統配置 RPRROTATE:繞基點移動對象 ROSCALE:在 X、Y 和 Z 方向等比例放大或縮小對象 SCSCRIPT:用腳本文件執行一系列命令 SCRSECTION:用剖切平面和實體截交創建面域 SECSETVAR:列出系統變數並修改變數值 SETSLICE:用平面剖切一組實體 SLSNAP:規定游標按指定的間距移動 SNSOLID:創建二維填充多邊形 SOSPELL:檢查圖形中文字的拼寫 SPSPLINE:創建二次或三次 (NURBS) 樣條曲線 SPLSPLINEDIT:編輯樣條曲線對象 SPESTRETCH:移動或拉伸對象 SSTYLE:創建或修改已命名的文字樣式以及設置圖形中文字的當前樣式 STSUBTRACT:用差集創建組合面域或實體 SUTABLET:校準、配置、打開和關閉已安裝的數字化儀 TATHICKNESS:設置當前三維實體的厚度 THTILEMODE:使「模型」選項卡或最後一個布局選項卡當前化 TI、TMTOLERANCE:創建形位公差標注 TOLTOOLBAR:顯示、隱藏和自定義工具欄 TOTORUS:創建圓環形實體 TORTRIM:用其他對象定義的剪切邊修剪對象 TRUNION:通過並運算創建組合面域或實體 UNIUNITS:設置坐標和角度的顯示格式和精度 UNVIEW:保存和恢復已命名的視圖 VVPOINT:設置圖形的三維直觀圖的查看方向 -VPWBLOCK:將塊對象寫入新圖形文件 WWEDGE:創建三維實體使其傾斜面尖端沿 X 軸正向 WEXATTACH:將外部參照附著到當前圖形中 XAXBIND:將外部參照依賴符號綁定到圖形中 XBXCLIP:定義外部參照或塊剪裁邊界,並且設置前剪裁面和後剪裁面 XCXLINE:創建無限長的直線(即參照線) XLXREF:控制圖形中的外部參照 XRZOOM:放大或縮小當前視口對象的外觀尺寸 Z--設女人的相貌為x,設女人的才智為y,那麼以x,y為自變數的函數φ(x,y)在相似笛卡兒坐標系下面對x的偏微分的幾何表述的解析方程和對y的偏微分的幾何表述的解析方程關於原點對稱,且其全函數的對於(0,0)的鄰域新對象的顏色 COLCOPY:復制對象 CO、CPDBCONNECT:為外部資料庫表提供 AutoCAD 介面 AAD、AEX、ALI、ASQ、ARO、ASE、DBCDDEDIT:編輯文字和屬性定義 EDDDVPOINT:設置三維觀察方向 VPDIMALIGNED:創建對齊線性標注 DALDIMANGULAR:創建角度標注 DANDIMBASELINE:從上一個或選定標注的基線處創建線性、角度或坐標標注 DBADIMCENTER:創建圓和圓弧的圓心標記或中心線 DCEDIMCONTINUE:從上一個或選定標注的第二尺寸界線處創建線性、角度或坐標標注 DCODIMDIAMETER:創建圓和圓弧的直徑標注 DDIDIMEDIT:編輯標注 DEDDIMLINEAR:創建線性尺寸標注 DLIDIMORDINATE:創建坐標點標注 DORDIMOVERRIDE:替代標注系統變數 DOVDIMRADIUS:創建圓和圓弧的半徑標注

4. 互動式的BAT命令

@ECHO off
SET times=
SET /P times="請輸入時間:[默認 22:00]"
IF "%times%"=="" (
SET times="22:00"
)
at %times% shutdown

5. 怎麼在python互動式命令行中運行腳本

話不多說

直接上代碼:

#encoding:utf-8
__author__='zhanghe'
importsys
deftest():
"""
命令行測試python調用自定義方法
"""
printsys.argv
try:
iflen(sys.argv)>1:
fun_name=eval(sys.argv[1])
fun_name()
else:
print'缺失參數'
exceptNameError,e:
printe
print'未定義的方法[%s]'%sys.argv[1]
deffuck():
print'Thisisatest!'
if__name__=='__main__':
test()
"""
sys.argv[0]文件名
sys.argv[1]命令行輸入的參數1
sys.argv[2]命令行輸入的參數2
測試用例:
$python/home/zhanghe/code/python/test/test_sys_arg.py
$python/home/zhanghe/code/python/test/test_sys_arg.pyfuc
$python/home/zhanghe/code/python/test/test_sys_arg.pyfuck
"""


https://github.com/zhanghe06/python/blob/master/test/test_sys_arg.py

6. 怎麼用Python對一個互動式的命令行程序進行交互

在cmd里運行這個互動式程序
然後其他就和python和cmd下的程序打交道一樣了

比如:
開本機telnet或ssh服務
通過python telnet或ssh到本機,榮國write啟動這個互動式程序,開始write and receive就好

7. java怎麼執行linux互動式命令

Process prc = runtime.exec(.....); prc.waitFor();//這行就能阻塞後續代碼的執行,直到你執行的命令結束。

8. 什麼叫python互動式命令行

其實就是命令行,啥叫交互,你輸入,他直接輸出,這就叫交互,跟c語言啊,java有點區別吧?解釋執行嘛。

9. 什麼叫命令行交互方式

純粹敲代碼命令,無GUI界面的那種,比如在cmd下敲命令

10. 命令行模式和Python交互模式有什麼區別

命令行模式是直接在命令行窗口中運行python的py文件,需要先用文本編輯器編寫代碼,再通過命令行模式運行。交互模式是執行一行就返回一行代碼的結果。

1、首先編寫一個py文件,然後打開cmd,輸入「python 文件路徑」就可以執行這個py文件。如下圖輸入的是「python 1.py」。這種就是命令行模式

閱讀全文

與命令式交互相關的資料

熱點內容
macd從入門到精通pdf 瀏覽:867
程序員回北京老家 瀏覽:325
藏族pdf 瀏覽:657
矩形密封圈壓縮量 瀏覽:593
電腦設置ntp時間同步伺服器地址 瀏覽:20
怎麼更有效招聘對日程序員 瀏覽:149
命令號角 瀏覽:275
格力雙轉子壓縮機 瀏覽:614
hp伺服器上的ip地址 瀏覽:562
c語言編程計算100以內的所有素數 瀏覽:624
命令輸入框 瀏覽:892
冰箱壓縮機發燙噪音 瀏覽:85
單片機棧溢出符號 瀏覽:330
命令與征服修改器怎麼用 瀏覽:485
什麼app比較費錢 瀏覽:832
為什麼同一個app的功能不一樣 瀏覽:232
小型工作室用什麼伺服器好 瀏覽:995
程序員的興趣 瀏覽:413
華為伺服器有什麼好 瀏覽:701
程序員和測試之間的關系 瀏覽:945