首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >FreeBSD Bash $11,行尾在空格前添加\?

FreeBSD Bash $11,行尾在空格前添加\?
EN

Stack Overflow用户
提问于 2014-02-13 06:13:00
回答 2查看 312关注 0票数 0

我一直在用头撞墙,试图让它发挥作用。

我正在编写一个rsync备份脚本,用于freebsd。我在远程服务器上没有根权限,我需要在远程服务器上很好地调用mv和cp文件,所以一旦恢复它们,我就失去了所有权。

我正在尝试创建一个权限文件来备份所有权限和所有权,以便在数据恢复完成后重新应用。

这是备份代码

代码语言:javascript
复制
find /dir -ls >> output_file

这是还原代码

代码语言:javascript
复制
for f in `cat output_file|awk '{print $11}'` ; do chown `cat output_file|grep $f\$|awk '{print $5 ":" $6}'` $f ; done

这是output_file的一个例子

代码语言:javascript
复制
 23319     3857 -rwxrwxrwx    1 root                         root                          1867545 Jan  9 22:55 /mnt/Tank2/Users/root/stampede/Little_House.jpg
 23320     3089 -rwxrwxrwx    1 root                         root                          1530449 Jan  9 22:57 /mnt/Tank2/Users/root/stampede/Milky_Way.jpg
 23325     3857 -rwxrwxrwx    1 root                         root                          1938544 Jan  9 22:47 /mnt/Tank2/Users/root/stampede/Shy_Horses.jpg
 23324     3857 -rwxrwxrwx    1 root                         root                          1940621 Jan  9 22:50 /mnt/Tank2/Users/root/stampede/Reinforcements.jpg

除非文件或文件夹名中有一个空格,否则所有操作都会很好,然后就会失败。如果我的文件夹名为“文件夹1”,脚本只需要获得“文件夹”,我想我所需要做的就是让"cat output_file|awk '{print $11 }“从$11扩展到行尾,在每个空格之前添加一个\,所以输出符合标准*nux文件格式,但我无法想出如何做到这一点。

任何帮助都会很好!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-02-14 05:50:10

你工作太辛苦了,让电脑工作也太辛苦了。千万不要把猫吹到grep那里去。在这种情况下,您不需要任何这些工具;只需:

代码语言:javascript
复制
while read inode blocks perm links owner group bytes month day time path; do 
    chown $owner:$group "$path"
done < output_file

read将把所有的拖尾字段放入路径中,保留空白。

票数 1
EN

Stack Overflow用户

发布于 2014-02-13 06:36:29

首先,检查输出是否良好。

代码语言:javascript
复制
awk '{print $5 ":" $6,substr($0,112)}' output_file

如果好的话,试试下面的脚本

代码语言:javascript
复制
awk '{print $5 ":" $6,substr($0,112)}' output_file |while read perm file
do
  chown "$perm" "$file"
done
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21746588

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档