我有两个函数,第一个调用用法-file
来从用户那里获取文件。它有很长的文件名,所以这个功能剥离了我需要的东西。
例如:
./test.sh -file some_example_list_data2017.csv
它给了我data2017
(这就是我想要的)。
function get_file_name() {
filename=$1
if [ -f $filename ]
then
echo "${filename}" | awk (make long filename short)
else
echo "${filename} not found"
fi
}
第二个功能:我想在这里传递上面的$filename
,因为它已经有了完整的文件名。我想在屏幕上只显示一些内容。但这次使用
./test.sh -display someexample_list_data2017.csv
function parse_above_file() {
// here I want get_file_name and display the content
filename=$1
echo ${filename} | awk/sed/egrep (do something and display)
}
但第二个功能是没有传递文件名。当它运行脚本时,它只会打印任何内容。
答案 0 :(得分:0)
使用此代码,
function get_file_name() {
filename=$1
echo "$filename"
}
function parse_above_file() {
filename=$1
echo "$filename"
filename="bli"
get_file_name "$filename"
exit
}
filename="bla"
get_file_name $filename
filename="ble"
parse_above_file $filename
我得到了这个输出:
bla
ble
bli