我有一个目录中的文件列表和一组对应于另一个目录中每个文件的 jpeg。我需要遍历所有文件,并为每个文件名确定目标目录。
例如,如果我有三个名为foo.txt
,bar.txt
和baz.txt
in 的文本文件/home/userA/folder/
,则相应的 jpeg 将在/home/userA/folder2/foo/
,/home/userA/folder2/bar/
和 中/home/userA/folder2/baz/
。
我编写了一个脚本,它应该遍历所有 txt 文件并获取相应的目标目录,但它给了我一个错误:
bash: /home/userA/folder/File1.txt: syntax error: operand expected (error token is "/home/userA/folder/File1.txt")`
Run Code Online (Sandbox Code Playgroud)
我的脚本:
bash: /home/userA/folder/File1.txt: syntax error: operand expected (error token is "/home/userA/folder/File1.txt")`
Run Code Online (Sandbox Code Playgroud)
我怎样才能解决这个问题?
我正在使用来自 userA
. 在这个 shell 脚本的中间,我使用 切换到userB
用户su
,但这要求我输入密码,userB
我必须通过终端手动输入密码。请问有没有办法让我可以自动输入密码,而不必留在机器旁边手动输入密码?由于这个脚本中有一个循环,我不想一直盯着终端输入密码userB
。或者,如果有一种方法可以将密码放入我的 shellscript 中,这样终端就不会等待我手动输入密码?任何人都可以请教如何做到这一点?
我有一台本地连接到我的 linux 机器的 Windows 机器。windows机器上有一个共享文件夹,我使用sudo mount -t cifs -o username=myuser //xxx.xxx.xx.xx/myfolder /mnt/windowsshare/
它安装在我的linux机器上,它安装成功,我可以看到文件和文件夹。
现在的问题是我试图在已安装的共享中创建一个文件夹,但我不能。我检查了挂载文件夹的权限,它说
“您不是所有者,因此您无法更改这些权限”
如下所示:
我试过运行sudo chmod -R 777 /mnt/windowshare
,sudo chown -R isa /mnt/windowshare
但它说 chmod:
更改“/mnt/windowshare/.?00000002202011111110e5(和许多其他字符)”的权限:没有这样的文件或目录
然后我使用ctrl+停止命令c
有什么建议我可以控制对我的 linux 机器上这个文件夹的访问吗?
我使用下面的命令挂载 CIFS 共享,但我想在同一命令中自动获取 UID 和 GID,这样我就不必每次mount
在不同的机器上手动输入它。任何建议如何?
$ sudo mount -t cifs -o username=${USER},password=${PASSWORD},uid=<user>,gid=<group> \
//server-address/folder /mount/path/on/ubuntu
Run Code Online (Sandbox Code Playgroud) 每次运行终端时,我都会收到此错误消息“.bashrc 语法错误:文件意外结束”
所以我开始评论它的一部分以了解问题,我猜它在下面的 if 条件中。我想知道如何编辑它才能工作?
if ("1" == "$?LD_LIBRARY_PATH") then
if ("$LD_LIBRARY_PATH" !~ */usr/local/iscir/lib*) then
export LD_LIBRARY_PATH /usr/local/iscir/lib:$LD_LIBRARY_PATH
endif
else
export LD_LIBRARY_PATH /usr/local/iscir/lib
endif
Run Code Online (Sandbox Code Playgroud)
我试过这个,但没有像
if ["1" == "$?LD_LIBRARY_PATH"]; then
if ["$LD_LIBRARY_PATH" !~ */usr/local/iscir/lib*]; then
export LD_LIBRARY_PATH /usr/local/iscir/lib:$LD_LIBRARY_PATH
fi
else
export LD_LIBRARY_PATH /usr/local/iscir/lib
fi
Run Code Online (Sandbox Code Playgroud) bash ×3
mount ×2
shell-script ×2
bashrc ×1
chmod ×1
chown ×1
cifs ×1
permissions ×1
scripting ×1
terminal ×1