Tag: bash

如何在设置环境变量后修复无效的标识符错误?

我正在尝试在Ubuntu 14.04 LTS中设置cocos2dx,但在设置环境变量(在.bashrc )后,我开始收到此错误: bash: export: dev/cocos2d-x-3.2/tools/cocos2d-console/bin’: not a valid identifier bash: export:/home/john/android’: not a valid identifier bash: export: dev/android-ndk-r10b’: not a valid identifier bash: export:dev/adt-bundle-linux-x86_64-20140702/sdk’: not a valid identifier 我不知道如何解决它。

使用命令行删除指定文件/文件夹以外的所有文件?

我有一个包含大量文件夹和不同文件的文件夹,具有以下结构: NASA │ ├── a │ ├── doc1 │ ├── doc2 │ ├── doc3 │ ├── folder1 │ └── folder2 │ ├── b │ ├── doc1 │ ├── doc2 │ ├── doc3 │ ├── folder1 │ └── folder2 │ ├── c │ ├── doc1 │ ├── doc2 │ ├── doc3 │ ├── folder1 │ └── […]

如何在需要sudo的bash脚本中只输入一次密码

数据 我希望这台机器上的操作员用户安装自己的cifs共享 sudoers文件已包含所有运算符的/bin/mount -t cifs //*/* /media/* -o username=*命令 我希望用户通过脚本只安装一次密码来安装cifs共享,而不是两次。 sudo密码和cifs密码是相同的。 我已经拥有的东西 这个脚本有效: #!/bin/bash sudo ‘mount -t cifs //192.168.1.1/home /media/$USER/home -o username=$USER’ … 但它要求用户输入两次相同的密码! 一次为sudo 一旦为山本身 这也有效: #!/bin/bash echo -n Password: read -s szPassword echo $szPassword | sudo -S sh -c ‘echo $szPassword | mount -t cifs //192.168.1.1/home /media/$USER/home -o username=$USER’ … 但这需要我允许所有操作员用户能够sudo sh (主要安全问题) […]

如何运行具有相同名称别名的原始命令?

~/.bashrc文件中ls命令的别名别名为: alias ls=’ls –color=auto’ 然后,当我在终端别名ls ( ls –color=auto )中运行ls命令时运行。 但我的问题是我怎么能只运行原始的ls而且只有ls而没有额外的参数并且没有解决删除别名条目的问题? 因为当我删除这个条目时,我可以用简单的ls运行它。

在终端上运行可执行文件

我是Ubuntu的新手,目前正因为任务而加入Ubuntu。 我想问几个问题: 如何创建运行shell脚本的新命令? 例如,在终端上键入passwd ,它会在/usr/bin/passwd上运行可执行文件。 如何使它像我的文件一样? 如何将我的shell脚本更改为像passwd这样的可执行文件?

选项卡完成不适用于命令

我正在尝试使用Ubuntu 11.04 Beta 1中的命令的tab completion,运行所有最新的更新,但它似乎不起作用。 (虽然安装了包bash-completion) 选项卡完成仅适用于目录或文件。 任何想法在哪里挖?

什么是`$?`? 它是变量吗?

问题非常简单。 我可以使用$?获取上一个命令的退出代码$? 。 但究竟是什么呢? 我认为它不是变量,因为除了_之外的变量名称中不能有任何特殊字符。 foo?foo=10 将导致错误: foo?foo=10: command not found 所以,如果它不是一个变量,它是什么? 还有其他人喜欢吗?

如何在bash脚本中使用Expect&send命令执行sudo命令?

任何人都可以告诉我如何执行sudo命令吗? 我尝试了以下但这不起作用。 有人可以给我一些建议吗? set login “sasuke” set addr “hostname” set pw “mypasswd” spawn ssh $login@$addr expect “$login@$addr\’s password:” send “$pw\r” expect “#” send “output=$(sudo virsh list –all | awk “/running/{print \$2}” | tail -2); sudo virsh dominfo $output” expect “password:” send “$pw\r” expect “#” 当我尝试下面的脚本时,它执行没有错误,但我没有得到输出。 这是脚本和执行时的输出。 我在哪里弄错了? set login “sasuke” set addr “hostname” set pw […]

为什么/ bin / sh指向/ bin / dash而不是/ bin / bash?

据我所知,bash是Ubuntu中的默认shell,为什么/bin/sh指向/bin/dash ?

了解.bashrc和.bash_profile

在我以root身份登录的服务器上,我看到.bashrc (Ubuntu 10.10)。 在我的Mac上,我有一个.bash_profile Ubuntu总是只有.bashrc文件而不是.bash_profile吗? (我只是困惑,所以问,我意识到他们是不同的o / s但也许有某种关系?) 在我的服务器上,我想创建一个别名,我应该把它放在.bashrc吗? 如果我想要应用此别名以便所有用户都可以使用它,该怎么办?