当我开始一个新zsh会话时,它似乎总是将其工作目录设置为zsh我系统上运行的任何其他会话的最后一个已知工作目录。有没有办法配置zsh为刚开始$HOME?
例如,有时我进入通过网络共享的非常慢的目录或其他东西,我想打开一个新的 shell 并做其他事情,但我不能做任何其他事情,因为我的新会话太忙了试图设置它的工作目录到网络上那个慢速路径。
Zsh 对我非常照顾,有时可能会有点过分。我宁愿让它远离我的业务的时候之一是当它“想要确保我想要执行给定的命令”时。我遇到的功能是:
命令:
sudo !! - 运行以 sudo 为前缀的上一个命令
和
^old^new- 运行上一个命令,但将第一次出现的“旧”替换为“新”
问题:
当我输入上面列出的两个命令之一并点击时Enter,而不是运行命令立即,命令扩展到实际要运行的内容,我必须Enter再次点击才能实际执行它。第一个世界问题,但仍然如此。
1 $ pwd
2 /home/neil
3 $ sudo !!
4 $ sudo pwd
5 /home/neil
Run Code Online (Sandbox Code Playgroud)
我想跳过第 4 步。这在 bash 中默认被跳过。
我想知道如何配置zsh以不扩展文件名中的通配符。例如,我有一个包含数百个文件的目录,名称如下:
a.foo-bar a.foo b.foo-bar b.foo c.foo-bar c.foo
Run Code Online (Sandbox Code Playgroud)
我希望能够在通配符后执行选项卡完成匹配,所以
cat *.foo-< tab > => cat *.foo-bar
Run Code Online (Sandbox Code Playgroud)
这是我得到的:
$ cat *.foo- => cat a.foo-bar 文件 a.foo-bar b.foo-bar c.foo-bar
我对 shell 脚本很陌生。
当我查看一些为ksh ( #!/bin/ksh)编写的代码时,我看到在一个脚本中else if也有elif使用。
那么,shell 脚本中else if和之间有什么区别elif?
现在,当我打开 zsh 白蚁终端时,窗口标题是
user@host: ~
有没有办法在user@host不完全禁用自动标题的情况下删除该部分?
如果我启用DISABLE_AUTO_TITLE,.zshrc则窗口标题始终为termite. 我只想在浏览目录时更改窗口标题,以便它不显示用户和主机 - 仅显示目录,但是,例如,如果我打开nmtui我希望窗口标题自动变为nmtui而不是保持不变termite.
我想复制修改和访问时间,而不是用户 ID。如果我使用
cp -p source target
Run Code Online (Sandbox Code Playgroud)
它会复制一切。
我正在尝试将文件复制到其他用户,但保持原始日期不变。
我知道
ls -d */
Run Code Online (Sandbox Code Playgroud)
将当前目录中的所有文件夹列为dir1/ dir2/ dir3/.
bash 脚本中是否有可能将文件夹显示为dir1 dir2 dir3?
我制作了一个 python 脚本来解析大量数据并保存结果,最终生成了约 162 个文件。该脚本将这些文件命名为Parsed_NameOfOriginal\n. 请注意\n最后的 不是有意的,而是由我的脚本以某种方式添加的。由于生成这些结果需要花费很多时间,因此我不想再次运行固定脚本。
有没有办法使用 Linux 终端或 shell 脚本以相同的名称重命名目录中的每个文件,但\n最后修剪它?
即Parsed_ResultA\n变为Parsed_ResultA。
注意:这是添加的新行字符,而不是文本\n
我正在使用由 FreeDOS 制成的 FreeDOS 软盘启动盘sys.com(我在虚拟机上使用它们,软盘是虚拟的)。
我花了一整天的时间试图制作一个AUTOEXEC.BAT加载ctmouse(在 FreeDOS 上使用鼠标的应用程序)和HIMEMX(高内存管理器)的程序。
使用ctmouse,我只使用
lh A:\folder\CTMOUSE.EXE
Run Code Online (Sandbox Code Playgroud)
效果很好,而
DEVICE=A:\HIMEMX.EXE
Run Code Online (Sandbox Code Playgroud)
不起作用。它给出了错误:
Bad command or filename -'DEVICE'.
Run Code Online (Sandbox Code Playgroud)
有人可以帮忙吗?我已经尝试了几种方法来解决这个问题,但都没有奏效。
我正在尝试让脚本在 /tmp 中找到一个名为 sleep.txt 的文件,但它一直在循环
这是我所拥有的:
#!/bin/sh
set -x
until [ $(ls -la | grep -w "sleep.txt" | wc -l) != 0 ];
do
echo "Sleep.txt doesn't exist as of yet..."
done
echo "Sleep.txt now exists!!!"
sleep 2
exit
Run Code Online (Sandbox Code Playgroud) 如何查找和删除.jpg目录树中的所有文件,但文件名中包含“sample”的文件除外?
例如 :
a.zip -> keep it
b.jpg -> delete it
a-sample.jpg -> keep it
b-Sample.jpg -> keep it
Run Code Online (Sandbox Code Playgroud)