shell脚本中sudo的问题

精神病

如果我尝试编辑没有写权限的文件并为此创建了一个别名,则我想制作一个shell脚本以使用sudo运行VI。

    alias vi=my_script.sh

    #!/bin/bash
    file=$1

    if [ -r $file ]
    then
       /usr/bin/vi $file
    else
       sudo /usr/bin/vi $file
    fi        

但是,无论如何,当尝试编辑时,例如/ etc / hosts,我仍然不被允许编辑它。

我究竟做错了什么?

苏拉夫角

我已经修改了您的脚本才能正常工作

#!/bin/bash
file=$1
wown=$(/bin/ls -alF $file | awk '{print $3}')

if [ -r $file ] && [ $wown == $USER ]
then
    /usr/bin/vi $file
else
    sudo /usr/bin/vi $file
fi

而且,如果您希望直接从任何地方访问它,可以将其放在PATH中(例如~/bin/),而不是为其创建别名。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

shell脚本中sudo的问题

来自分类Dev

Shell脚本中的编码问题

来自分类Dev

Shell脚本中的echo问题

来自分类Dev

在ubuntu中不使用sudo的Shell脚本

来自分类Dev

使用sudo权限在当前shell中执行shell脚本

来自分类Dev

在Applescript中执行Shell脚本问题

来自分类Dev

在Shell脚本中获取$ PWD的问题

来自分类Dev

jenkins脚本代码在执行shell中的问题

来自分类Dev

我的shell脚本中的sh有问题

来自分类Dev

sudo时无法在我的shell脚本中运行'kill--$$'

来自分类Dev

在shell脚本中间退出sudo

来自分类Dev

Shell脚本替换问题

来自分类Dev

Shell脚本功能问题

来自分类Dev

Shell脚本功能问题

来自分类Dev

查找问题(shell脚本)

来自分类Dev

不带sudo的sudo,在脚本中暗含sudo

来自分类Dev

在脚本中逃避sudo

来自分类Dev

撤消脚本中的“ sudo”

来自分类Dev

Grep问题与shell脚本中的if语句有关

来自分类Dev

从shell问题执行脚本

来自分类Dev

从shell问题执行脚本

来自分类Dev

Shell脚本问题与“ if [-[-d $ {directory}]”

来自分类Dev

Shell脚本单引号问题

来自分类Dev

带有sudo sh的Shell脚本

来自分类Dev

从eclipse调用需要sudo密码的Shell脚本

来自分类Dev

带有sudo sh的Shell脚本

来自分类Dev

允许包含 sudo 的 shell 脚本运行

来自分类Dev

vncserver 不会在使用 sudo 执行的 shell 脚本中运行

来自分类Dev

bash shell脚本,在makefile中搜索复杂的行(shell参数扩展问题)