shell脚本如何打印命令出错的信息 在命令行执行passwd报错: can't update password file /etc/passwd 但将passwd写进脚本后执行就无法让显示上面的错误信息,如何让他显示出来
时间: 2024-05-08 17:17:51 浏览: 13
可以在脚本中使用set -e命令来使脚本在执行出错时立即退出,并打印出错信息。例如:
```
#!/bin/bash
set -e
passwd
```
执行这个脚本时,如果passwd命令出错,就会立即退出,并打印出错信息。如果想要手动处理错误信息,可以使用set +e命令来关闭这个功能。例如:
```
#!/bin/bash
set -e
passwd || true
set +e
```
这样,即使passwd命令出错,脚本也不会立即退出,而是会继续执行后面的命令。同时,使用了|| true来让脚本在遇到错误时返回0状态,避免了脚本整体返回非0状态的问题。最后,使用set +e来关闭错误立即退出的功能,可以手动处理错误信息。
相关问题
passwd: /etc/passwd: Read-only file system passwd: can't update password file /etc/passwd
这个错误提示表明你没有权限修改`/etc/passwd`文件,因为该文件系统是只读的。如果你想要修改该文件,你需要先给该文件加上可写权限。你可以使用以下命令来给`/etc/passwd`文件加上可写权限:
```shell
sudo chmod +w /etc/passwd
```
如果你想要修改`/etc/passwd`目录下所有文件夹的属性为可写可读可执行,你可以使用以下命令:
```shell
sudo chmod -R 777 /etc/passwd
```
请注意,修改系统文件可能会导致系统不稳定或不安全,因此在进行此类操作之前,请确保你知道自己在做什么。
passwd: /etc/passwd: Read-only file system passwd: can't update password file /etc/passwd怎么解决
这个问题的原因是/etc/passwd目录下的文件夹属性为只读,无法修改。解决方法如下:
1.使用挂载命令重新挂载文件系统为可读写模式:
```shell
mount -o remount,rw /
```
2.修改文件夹属性为可读写可执行:
```shell
chmod 777 /etc/passwd
```
3.修改完成后,使用挂载命令重新挂载文件系统为只读模式:
```shell
mount -o remount,ro /
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)