我有一堆 txt 文件,我想输出它们小写,只有字母和每行一个单词,我可以tr在这样的管道中使用多个命令来完成:
tr -d '[:punct:]' <doyle_sherlock_holmes.txt | tr '[:upper:]' '[:lower:]' | tr ' ' '\n'
Run Code Online (Sandbox Code Playgroud)
是否可以在一次扫描中完成此操作?我可以编写一个 C 程序来做到这一点,但我觉得有一种方法可以使用tr, sed,awk或来做到这一点perl。
我开启了开发者模式,我可以访问shell,但是我没有emerge命令,我记得读过ChromeOS是基于Gentoo构建的。
如何在 ChromeOS 上获得包管理器?
我正在尝试git commit在点击时添加自动完成功能TabTab。
我正在开发的自动完成功能基于分支命名约定。约定是将 PivotalTracker Id 编号附加到分支名称的末尾,因此典型的分支看起来像foo-bar-baz-1449242.
我们可以通过添加[#1449242]到提交消息的开头来将提交与 PivotalTracker 卡相关联。如果git commit输入并且用户点击,我希望它自动插入TabTab。
我已经在这里做了这个:https : //github.com/tlehman/dotfiles/blob/master/ptid_git_complete
(为了方便起见,这里是源代码):
function _ptid_git_complete_()
{
local line="${COMP_LINE}" # the entire line that is being completed
# check that the commit option was passed to git
if [[ "$line" == "git commit" ]]; then
# get the PivotalTracker Id from the branch name
ptid=`git branch | grep -e "^\*" | sed 's/^\* //g' | …Run Code Online (Sandbox Code Playgroud) 可能的重复:
更改光标形状(或颜色)以指示 bash 中的 vi 模式
我在 bash shell 中使用 vi-mode,每当我处于插入模式时,我都想更改 PS1 变量。当我运行时bind -v | awk '/keymap/ {print $3}',结果是vi-insert插入模式和vi正常模式。
我想要一些我处于哪种模式的视觉指示器,例如黄色提示或点,如下所示:

我希望这种视觉变化在模式改变后立即发生,即使没有运行任何命令。是否可以更改当前进程的 PS1 值并更新提示而不按 Enter 键?
如何确定上次打开文件的时间?
我已经查看过man ls(使用 GNU coreutils 8.22),但没有看到有关此时间戳的任何信息。
我经常用数据遇到这个问题,如果我有一些整数,我经常想查看相邻整数之间的差异,我通常在 Ruby 或 Python 中解决这个问题,但我认为这样的事情可以在 awk 中完成,而我宁愿那样。
我有一个数据表,例如:
201309,694
201310,699
201311,700
201312,705
201401,713
201402,740
Run Code Online (Sandbox Code Playgroud)
我想找到相邻的差异,即:
201310-201309,699-694
201311-201310,700-699
201312-201311,705-700
201401-201312,713-715
201402-201401,740-713
Run Code Online (Sandbox Code Playgroud)
我getline在 awk 手册页中找到了该功能,但我一直无法成功使用它。