过去,在 linux 系统上,我已经能够使用cat /dev/null > file.log
.
但是,在 10.9(小牛队)上,情况似乎并非如此。我有一个 11GB 的文件正在被应用程序记录,但是当我对所述文件执行相同的命令时,似乎没有任何反应。
当我在一个很小的文件上尝试这个时,它确实有效。
这是ls -l /dev/null
:
crw-rw-rw- 1 root wheel 3, 2 Dec 16 12:49 /dev/null
我也试过cp /dev/null file.log
没有用。
考虑到我可能会利用 truncate 函数(man 2 truncate
在 Darwin 中),我编译了它并针对两个文件运行它,一个是小文件,另一个是实际的日志文件。同样,它对普通文件有效,对更大的日志无效。
/*
* Copyright (c) 2013 Thomas de Grivel <thomas@lowh.net>
*
* Permission to use, copy, modify, and distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
...
* OR …
Run Code Online (Sandbox Code Playgroud) 什么决定了进程将被分配的 PID?
似乎用于 ID 的整数值有一个上限;这个限制是什么,它在哪里定义?
是否有为非用户创建的进程保留的范围?
需要明确的是,我问这个更多是出于好奇而不是任何实际原因。
我用pushd
工作在多个目录bash
和zsh
。我使用了别名dirs
,dirs -v
以便在我想查看目录堆栈中的内容时得到一个有序列表:
chb$ dirs
0 /Volumes/banister/grosste_daever_gh/2013-03-27/reader
1 /tmp/20130618202713/Library/Internet Plug-Ins
2 ~/code/foo/view/static/css
3 ~/Downloads
Run Code Online (Sandbox Code Playgroud)
有没有一种方法(在bash
或 中zsh
)我可以使用它在堆栈上的位置的别名来引用命令行上列出的目录之一?例如,而不是键入:
chb$ cp ~/code/foo/view/static/css/baz.css ~/code/bar/view/static/css/
Run Code Online (Sandbox Code Playgroud)
我会输入:
chb$ cp <2>baz.css ~/code/bar/view/static/css/
Run Code Online (Sandbox Code Playgroud)
......什么样,也许用一个美元符号和变量名来代替<n>
。