这是我的别名文件中的一行,因此每当我打开终端时,它都会在 vim 编辑器中打开 jasonaccomp。
alias acc='gnome-terminal -e "bash -c 'cd ~/Downloads; vim jasonaccomp'"'
Run Code Online (Sandbox Code Playgroud)
退出vim doc后我看到
bash: alias: /home/master/Downloads: not found
Run Code Online (Sandbox Code Playgroud)
这一切都是在我什至打电话给 acc 之前。更糟糕的是,以下代码在我的主目录中运行时,完全按照我的意愿工作。它打开一个新终端,打开 jasonaccomp,当我完成编辑后,终端关闭。
gnome-terminal -e "bash -c 'cd ~/Downloads; vim jasonaccomp'"
Run Code Online (Sandbox Code Playgroud)
此外,键入时命令 acc 给我 > 一个闪烁的光标。每当我打开一个新终端时,如何摆脱编辑 jasonaccomp 的麻烦?另外,我如何让 acc 执行上述代码行的操作。
跑步df -h
给出:
Filesystem Size Used Avail Use% Mounted on
udev 1.9G 0 1.9G 0% /dev
tmpfs 385M 6.2M 379M 2% /run
/dev/sda2 113G 27G 81G 25% /
tmpfs 1.9G 69M 1.9G 4% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/sda1 511M 3.4M 508M 1% /boot/efi
tmpfs 385M 40K 385M 1% /run/user/1000
Run Code Online (Sandbox Code Playgroud)
所以没有/tmp
出现。这里发生了什么?
我想搜索创建日期早于今天的文件。
我愿意 :
find $HOME -type f -name "myFile_*.sql.zip" -mtime +1
Run Code Online (Sandbox Code Playgroud)
但它不返回任何内容,它至少应该返回一个文件。
我哪里错了?
我必须对在 shell 脚本中作为参数给出的文件中的所有单词进行排序。这是单线:
tr [:space:] '\n' <$1 | sort -nrk2,2 | uniq -c |sed 's/^ \+//g'
Run Code Online (Sandbox Code Playgroud)
基本上,如果我的文件中有这样的内容:
bla bla bla bla hu hu hu
Run Code Online (Sandbox Code Playgroud)
它会输出
4 bla
3 hu
Run Code Online (Sandbox Code Playgroud)
我希望他们像
bla 4
hu 3
Run Code Online (Sandbox Code Playgroud) 请不要烧焦我,我还是新手,只寻求帮助。我运行了以下命令:
echo "deb https://pkg.tox.chat/debian nightly release"
sudo tee /etc/apt/sources.list.d/tox.list
wget -qO - https://pkg.tox.chat/debian/pkg.gpg.key | sudo apt-key add -
sudo apt-get install apt-transport-https
Run Code Online (Sandbox Code Playgroud)
我想学习如何反转这些命令。
所以我已经使用 Ubuntu 几个月了,并且遇到了一个非常菜鸟的终端问题。
我想从家 -> 文档 -> 我的程序
我可以通过这样做进入我的文档文件夹
cd ./Documents
Run Code Online (Sandbox Code Playgroud)
但是当我想进入“我的程序”时,由于“我的”和“程序”之间的空格,我无法这样做。我必须使用不同的语法来通过终端访问此文件夹吗?
我正在为我工作的公司开发一个工具包,问题是,这个“工具包”中的工具之一需要具有识别架构的能力,我已经可以工作 32 位和 64 位,但我无法让手臂工作,有人可以帮忙吗?这就是我得到和需要的..
if [ "$arch" == 'armv' ];
then
echo "ARM Architecture
Run Code Online (Sandbox Code Playgroud)
我想要它做的是,当检测到arm架构(6或7我并不真正关心这一点)时,它只是说arm架构,但我已经尝试编辑
if [ "$arch" == 'armv' ];
Run Code Online (Sandbox Code Playgroud)
到
if [ "$arch" == 'armv*' ];
Run Code Online (Sandbox Code Playgroud)
如果有人知道解决方案,欢迎任何帮助。
哦,我使用 shell/bash 因为他们不想在机器上安装任何额外的程序,所以我使用 bash 和 shell 脚本,这样他们就有自己的程序了:)
- - - - - - - - - 编辑 - - - - - - - - -
这是完整的代码,这样你们就可以了解我正在尝试的内容
arch=$(uname -i)
if [ "$arch" == 'x86_64' ];
then
echo "X64 Architecture"
fi
if [ "$arch" == 'x86_32' ];
then
echo "X32 Architecture" …
Run Code Online (Sandbox Code Playgroud) 我正在尝试编写sudo
对我的 ec2 实例具有访问权限的用户的创建脚本。
我在设置 sudo 访问时遇到问题。我正在以 root 身份运行以下内容...
adduser --disabled-password --gecos "" testuser
usermod -a -G admin,sudo testuser
Run Code Online (Sandbox Code Playgroud)
然后我从 s3 复制授权密钥。
此时 ssh 工作正常。
但是,如果我尝试 sudo,则会提示我输入密码。
我的 sudoers 文件包括以下内容...
# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL
Run Code Online (Sandbox Code Playgroud)
除了注销并重新登录之外,我还需要做些什么才能使我的更改生效?
我没有更改 sudoers 文件,这是默认设置。
还有另一个系统创建的 user ubuntu
,它可以成功 sudo 。但是,文件中没有明确提及此用户sudoers
,因此它必须通过组成员身份进行。
更新:我尝试添加“ubuntu”属于 testuser 的所有其他组,但仍然提示我输入密码。
有什么办法可以弄清楚“ubuntu”如何获得无密码的 sudo 访问权限?
当我在终端中输入一些命令并通过键入检查该命令是否有效时
echo #?
Run Code Online (Sandbox Code Playgroud)
它不打印任何类型的整数值?
我的系统有问题吗?我正在使用 Ubuntu 14.04。