Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Function 拆分函数在UNIX中不起作用_Function_Unix_Split - Fatal编程技术网

Function 拆分函数在UNIX中不起作用

Function 拆分函数在UNIX中不起作用,function,unix,split,Function,Unix,Split,我试图在文件名中有空格的文件上运行拆分 我似乎无法让它工作。所以我有以下几点 SOURCE_FILE="test file.txt" split -l 100 $SOURCE_FILE 现在我尝试将$SOURCE\u文件封装在“中,但运气不佳: split -l 100 "\""$SOURCE_FILE"\"" 甚至 split -l 100 '"'$SOURCE_FILE'"' 我仍然得到: usage: split [-l line_count] [-a suffix_length]

我试图在文件名中有空格的文件上运行拆分

我似乎无法让它工作。所以我有以下几点

SOURCE_FILE="test file.txt"
split -l 100 $SOURCE_FILE
现在我尝试将
$SOURCE\u文件
封装在
中,但运气不佳:

split -l 100 "\""$SOURCE_FILE"\""
甚至

split -l 100 '"'$SOURCE_FILE'"'
我仍然得到:

usage: split [-l line_count] [-a suffix_length] [file [name]]
   or: split -b number[k|m] [-a suffix_length] [file [name]]

你太努力了!一组双引号就足够了:

split -l 100 "$SOURCE_FILE"
您希望拆分的参数如下所示:

-l
100
test file.txt
您尝试的两个命令都会产生以下参数:

-l
100
"test
file.txt"
如中所示,它们相当于此错误命令:

split -l 100 '"test' 'file.txt"'
我想你只是尝试了“$SOURCE_FILE”而没有花哨的转义技巧


我想我应该尝试将文件划分为split,可能split只是在文件名中有空格的问题,或者它真的对空格以外的内容感到愤怒。

或者您可以插入反斜杠以避开嵌入的空格:

SOURCE_FILE=test\ file.txt
split -l 100 "$SOURCE_FILE"

哥们,我要自杀了:(我想那会插入真正的单词
“$SOURCE\u FILE”
,而不是变量。FMLAh,是的,你可以在双引号内使用变量名。只是不能在单引号内。