⑴ tcl文件如何從shell命令行讀取參數
Introction
Although Tcl scripts/proceres can be controlled via graphical user interfaces (GUI's) that have been implemented with the Tk toolkit, it is often easier to use traditional command line techniques. Another tutorial, using the command line, gave a simple example of invoking a Tcl script from the command line.
This tutorial demonstrates how, at the time a script is invoked, data can be passed to the script from the command line.
arguments
Items of data passed to a script from the command line are known as arguments. For example, take the simple script presented in using the command line tutorial.
puts [expr 3 + 2]
Lets assume the script has been saved as add.tcl and that the present working directory of the shell window in which we are working matches the directory in which the script has been saved. We know the script can be run using the following command,
tclsh add.tcl
Of course the output is always the same because the values being added are hard-coded into the script. The script would be more useful if we could pass values to the script from the command line.
tclsh add.tcl 23 15
The method by which numbers can be passed into, and used by a script, is as follows.
argc argv argv0
All Tcl scripts have access to three predefined variables.
$argc - number items of arguments passed to a script.
$argv - list of the arguments.
$argv0 - name of the script.
To use the arguments, the script could be re-written as follows.
if { $argc != 2 } {
puts "The add.tcl script requires two numbers to be inputed."
puts "For example, tclsh add.tcl 2 5".
puts "Please try again."
} else {
puts [expr [lindex $argv 0] + [lindex $argv 1]]
}
The lindex command returns the first and second items from the list of arguments entered at the command line. Items in a list are counted from zero.
⑵ 怎麼在shell里寫腳本並運行
執行「nano function.sh」命令,創建新的shell腳本文件,名字為「function.sh」。
編輯新創建的shell腳本文件「function.sh"。函數必須先定義後使用。
shell腳本的內容如下:
#!/bin/bash
add(){
sum_1=$1;
sum_2=$2;
sum=`expr $sum_1 + $sum_2`;
echo "the sum is ${sum}";
}
add $1 $2
給新創建的function.sh賦可執行許可權,命令為「chmod 755 function.sh」。
使用「./function.sh 1 2」調用腳本,並給腳本傳遞兩個數字。
6
執行命令的結果為「the sum is 3」。
⑶ 如何運行shell命令
1、shell的內建命野州令,用戶可以直接輸入命令名稱執行。比如pwd、cd等命令。用戶可以通過type命令來判斷命令是內建命令還是外部命令。
⑷ 如何運行shell腳本
編寫好的shell腳本(如:test),可以採取兩種方式進行運行:
一、 $ sh test
一般不採用這種調用方式,尤其不採用「sh<test」的調用方式,因為這種方式將禁止shell讀取標准輸入。
也可以採用 $ ksh test
這種方式要求shell具有「可讀」的訪問許可權。
二、直接運行可執行的shell腳本之前,首先應使用下列chmod命令,把shell腳本文件設置為可執行的文件。
chmod 755 test(除文件屬主可寫之外,每個用戶均具有讀和可執行的訪問許可權)
chmod +rx test(同上)
chmod u+rx test(只有文件屬主具有讀和執行的訪問許可權)
按照上述要求設置shell腳本文件的訪問許可權後,可採用下列方式,直接運行shell腳本了。
1、test(如果命令檢索路徑包含當前目錄)
2、./test(如果命令減縮路徑不包含當前目錄)
*說明: sh test 方式調用一個shell叫蹦可能會禁止某些shell特定的擴展功能,因而可能引起腳本無法正確執行。
⑸ 如何在tcl腳本中調用shell命令
你的linux裝了tcl解釋器了嗎,脊慧一般是 /沖野usr/bin/tclsh,如果確認你裝了 (確認方法是在命令行下執行 tclsh),如果沒問題,就在你的TCL腳本第一行加上 #!/usr/bin/env tclsh 然後確保你的櫻判答腳本(假定腳本名字叫test.tcl) 是可執行的 (chmod +x tes...
⑹ tcl腳本怎樣嵌入c-shell腳本
假定你的 c shell 腳本名字是 a.sh,且具有可執行許可權,則可以在 tcl 中用
exec /path/to/a.sh
來執行
⑺ tcl腳本怎麼在linuxdebug
在LinuxDebug環境中執行Tcl腳本,可以通過以下步驟實現:
1. 打開Linux終端,進入Tcl腳本所在目錄,使用chmod命令給Tcl腳本文件添加執行許可權:
chmod x filename.tcl
2. 在終端中執行以下命令,運行Tcl腳本:
tclsh filename.tcl
3. 如果想將Tcl腳本的輸出重定向到文件中保存,可以使游巧用以下命令:
tclsh filename.tcl >猜磨物 output.txt
這樣就可以將Tcl腳本執穗液行的結果輸出到output.txt文件中。
⑻ linux 中如何執行腳本
首先腳本需要有執行許可權
chmod u+x file.sh
執行腳本有三種方法:
1. ./file.sh
特點:開啟bash子進程來執行,也就是開啟額外的進程來進行,不影響原進程的變數、配置等
2. bash file.sh
特點:和./file.sh相同
3. source file.sh 或者 . file.sh
特點:在原bash進程中執行腳本。
第三種方法主要用於在腳本中切換用戶su、切換目錄cd等命令。
source 和 . 命令是相同的。
你可以搜索 source
補充,如何查看腳本運行是否開啟了bash子進程
1.
vim
file.sh
2.
寫入
#!/bin/bash
#echo
$$命令會輸出bash進程id
echo
$$
3.
保存並賦予可執行許可權chmod
u+x
file.sh
4.
在你的shell中輸入,echo
$$
屏幕輸出4176
5.
./file.sh
屏幕輸出3600
6.
bash
file.sh
屏幕輸出3984
7.
source
file.sh
屏幕輸出4176
和
你直接在shell中輸出的一樣,說明是在同一個bash進程
⑼ linux怎麼運行tcl腳本不成功
運行環境錯誤。Linux的Shell中我們可戚宏以運行ls這條命令,但冊穗是在tcl環境中,運行ls是不成功,所以通過調用execls,就可以運行這條命令了。Linux,是一種類似Unix的操作系統,可以免費使用,自由傳播,高姿冊多用戶、多任務、多線程、多CPU的操作系統。
⑽ 如何用SHELL命令運行一個文件
1、Shell是命令解釋器,所執行的文件有兩種,一種是基於ELF文件格式的可執行文件,一種是基於Shell腳本格式的腳本文件。
2、不管是可執行文件還是shell腳本,如果存在於PATH變數所指明的路徑中,shell會自動尋找相應的可執行文件,用戶只需要輸入可執行文件名或者腳本名即可執行。
3、如果可執行文件或者Shell腳本的存放位置不在PATH變數所指明的路徑中,則需要通過".」來執行,比如下面的C語言寫的hello world程序,需要輸入./t才可以被shell運行。