是否有压缩 STDIN 并输出到 STDOUT 的工具?该工具(或其对应工具)也应该能够解压。简单的东西很好,但它必须是无损的。
我正在尝试获取目录中文件的所有未暂存修改的 bash 数组(使用 Git)。以下代码用于打印出目录中所有修改过的文件:
git -C $dir/.. status --porcelain | grep "^.\w" | cut -c 4-
Run Code Online (Sandbox Code Playgroud)
这打印
"Directory Name/File B.txt"
"File A.txt"
Run Code Online (Sandbox Code Playgroud)
我尝试使用
arr1=($(git status --porcelain | grep "^.\w" | cut -c 4-))
Run Code Online (Sandbox Code Playgroud)
但是之后
for a in "${arr1[@]}"; do echo "$a"; done
Run Code Online (Sandbox Code Playgroud)
(${arr1[@]}印刷品周围有和没有引号
"Directory
Name/File
B.txt"
"File
A.txt"
Run Code Online (Sandbox Code Playgroud)
我也试过
git -C $dir/.. status --porcelain | grep "^.\w" | cut -c 4- | readarray arr2
Run Code Online (Sandbox Code Playgroud)
但是之后
for a in "${arr2[@]}"; do echo "$a"; done
Run Code Online (Sandbox Code Playgroud)
(带和不带引号${arr2[@]})不打印任何内容。declare -a …