标题: [文本处理] 请教enabledelayedexpansion在linux的shell脚本有什么命令? [打印本页]
作者: netdzb 时间: 2024-3-26 19:22 标题: 请教enabledelayedexpansion在linux的shell脚本有什么命令?
enabledelayedexpansion选项在linux的shell脚本有什么命令啊?
作者: Batcher 时间: 2024-3-26 22:05
回复 1# netdzb
Linux的Shell脚本没有这个概念,请说说你遇到了什么问题?
作者: netdzb 时间: 2024-3-26 23:29
本帖最后由 netdzb 于 2024-3-26 23:33 编辑
回复 2# Batcher
我遇到的问题是zip打包文件续行续不了
zip file.zip file1.txt file2.txt file3.txt
没问题
写成续续行就有问题
zip file.zip \
file1.txt \
file2.txt \
file3.txt
就有问题
非要写成
zip file.zip file1.txt \
file2.txt \
file3.txt
虽然不影响使用,想到批处理可以用延迟命令解释来解决的,linux居然不支持!
作者: Batcher 时间: 2024-3-26 23:34
回复 3# netdzb
请发一个完整的BAT代码看看你是怎样用延迟命令处理这种需求的?我帮你翻译成Shell试试
作者: netdzb 时间: 2024-3-27 07:10
回复 4# Batcher
enabledelayedexpansion
zip file.zip file1.txt \
file2.txt \
file3.txt
windows平台我没有zip这个命令,不过这个写法应该是可以通过的
作者: Batcher 时间: 2024-3-27 08:18
回复 5# netdzb
不是的,这种写法跟enabledelayedexpansion没有任何关系。就是CMD和Shell两种解释器在续行符及其用法上的不同。
作者: netdzb 时间: 2024-3-27 10:03
回复 6# Batcher
我想解决的问题是如何用zip工具把list.txt的文件清单打包,以前用的7z和rar,我网上没有找到具体的代码
作者: netdzb 时间: 2024-3-27 10:14
本帖最后由 netdzb 于 2024-3-27 10:16 编辑
回复 6# Batcher
我用这个写法不知道能否解决问题,
zip file.zip -@|cat list.txt
运行后弹出文件清单,但我不知道如何传给zip命令,linux是ctrl加什么键完成stdin的输入呢?
或者在list.txt的最后一行加上某个控制符号来完成参数的传递
作者: netdzb 时间: 2024-3-27 13:34 标题: 请教如何用zip命令对文件打包
list.txt是文件清单,均在当前目录下
作者: Batcher 时间: 2024-3-27 14:05
回复 8# netdzb
方法1:- cat list.txt | zip V1.zip -@
复制代码
方法2:- xargs -a list.txt -I {} zip V2.zip {}
复制代码
方法3- for i in $(cat list.txt); do
- zip V3.zip $i
- done
复制代码
作者: netdzb 时间: 2024-3-27 14:45
回复 10# Batcher
谢谢解决了问题
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |