我正在进行数据传输,旧文件系统深深依赖于现在位于不同路径上的目录。这是一个 git 目录,用于在线存储代码。我无权移动或重命名它。
所以我能做的是将这个目录 rsync 到同一个旧路径。但是目录名也变了。
有没有一种简单的方法可以将目录同步到具有不同名称的目标目录?
在我的理解中,awk 数组类似于 python dict。
所以我写下下面的代码来探索它:
awk '{my_dict[$1] = $2} END { print my_dict}' zen
Run Code Online (Sandbox Code Playgroud)
我得到了: awk: can't read value of my_dict; it's an array name.
由于第一列不是数字,我如何读取数组的总内容或遍历它?
我今天从http://www.tutorialspoint.com/unix/unix-quoting-mechanisms.htm阅读 shell 教程
其中提到:
如果要输出的字符串中出现单引号,则不应将整个字符串放在单引号内,而应在其之前使用反斜杠 (),如下所示:
echo 'It\'s Shell Programming'
Run Code Online (Sandbox Code Playgroud)
我在我的 centos 服务器上试过这个,它不起作用,>提示提示我输入更多。
我想知道,由于两个单引号将每个特殊字符转换为普通字符,其中包括转义符号\,但排除自身,',
我应该如何'在单引号短语中表示单引号?
今天我通过这篇文章学习了一些关于 fifo 的东西:命名管道简介,其中提到了cat <(ls -l).
我使用 做了一些实验sort < (ls -l),它弹出一个错误:
-bash: syntax error near unexpected token `('`
Run Code Online (Sandbox Code Playgroud)
然后我发现我在命令中错误添加了一个额外的空格。
但是,为什么这个额外的命令会导致这个失败呢?为什么重定向符号必须靠近(?
例如,我可以设置:
gb = cd /media/Dan/evolution
Run Code Online (Sandbox Code Playgroud)
...这样每次我gb在 bash 中执行时,我都可以cd到那个特定的目录?
我在网上找到了一些东西:alias命令。但是好像做不到上面的工作。
有可能做到吗?如何?
我有一台硬盘使用率为 90% 的机器。我想将其 500 多个日志文件压缩成一个较小的新文件。但是,硬盘太小,无法同时保存原始文件和压缩文件。
所以我需要的是将所有的日志文件一个一个地压缩成一个新的文件,压缩后删除每个原始文件。
我怎样才能在 Linux 中做到这一点?
我知道我可以使用此选项在特定修改时间之间查找文件。但我很好奇这是什么意思?
我曾经man find | grep newermt试图找到一些东西。但我没有直接的内容。似乎-newer file和mtime东西可能有关系。但我不确定..
那么,-newermt实际上是什么意思?
最近我正在将短句回显到tree_hole文件中。
我是echo 'something' >> tree_hole用来做这项工作的。
但是我总是担心如果我输入错误>而不是>>,因为我经常这样做。
所以我在 bashrc 中创建了一个我自己的全局 bash 函数:
function th { echo "$1" >> /Users/zen1/zen/pythonstudy/tree_hole; }
export -f th
Run Code Online (Sandbox Code Playgroud)
但我想知道是否有另一种简单的方法可以将行附加到文件的末尾。因为我可能需要在其他场合经常使用它。
有没有?
今天我通过在线阅读这个文档来学习一些基本的 git 知识:
http://git-scm.com/book/en/v2/Git-Basics-Viewing-the-Commit-Hi
在那一章,我开始学习使用我喜欢的git log --pretty=format:" "方式显示日志信息。
但是有些方法,我在格式表中看到了两个类似的选项,%Hfor Commit Hash、%PforParent Hash和%Tfor Tree Hash。
我在命令行上对它们进行了试验,结果它们都是具有不同值的相同长度的哈希值。
我用谷歌搜索和计算器溢出,到目前为止没有明显的提示。
我对此有想法Hash value,它是该 git commit 的校验和。
但是做什么Parent Hash和Tree hash做什么?
Parent Hash意思是分支直接起源的哈希值吗?我在 iterm2 中打开了 vim。首先,我在插入模式下输入了一些东西,比如
Hello
Run Code Online (Sandbox Code Playgroud)
在这个阶段,如果我没有退出插入模式,deletekey 可以工作并且可以根据需要删除整个单词。
如果我退出插入模式,并再次打开插入模式,这Hello不能通过delete键删除。但是可以删除新输入的内容。
我重命名了我的 .vimrc,问题仍然存在。
在 shell 命令行中,我的delete密钥运行良好。
我通过远程服务器做了一些测试iterm,没有遇到同样的问题。
这个问题的原因可能是什么?如何解决?
PS:因为我用的是macbook,所以deletekey是对应 backspacePC的。
command-line ×4
bash ×3
shell ×2
awk ×1
cd-command ×1
compression ×1
disk-usage ×1
find ×1
git ×1
gzip ×1
quoting ×1
rsync ×1
tar ×1
vim ×1