4 Linux有用的提示和黑客
你应该创建一个类似于下面给出的长/复杂的目录树。什么是最有效的方法来实现呢?
目录树结构实现如下所示。$ cd /home/$USER/Desktop $ mkdir youcl $ mkdir youcl/etc $ mkdir youcl/lib $ mkdir youcl/usr $ mkdir youcl/bin $ mkdir youcl/tmp $ mkdir youcl/opt $ mkdir youcl/var $ mkdir youcl/etc/x1 $ mkdir youcl/usr/x2 $ mkdir youcl/usr/x3 $ mkdir youcl/tmp/Y1 $ mkdir youcl/tmp/Y2 $ mkdir youcl/tmp/Y3 $ mkdir youcl/tmp/Y3/z上述情况可以简单地通过运行下面的1-liner命令来实现。
$ mkdir -p /home/$USER/Desktop/youcl/{etc/x1,lib,usr/{x2,x3},bin,tmp/{Y1,Y2,Y3/z},opt,var}要验证你可以使用 树命令。 如果没有安装,你可以 恰当或 Yum包“ 树 ”。
$ tree youcl
检查目录结构
{}
创建目录的层次结构。如果在shell脚本的内部使用,这可能是非常有帮助的。
2.在您的桌面上创建一个文件(例如测试)(/ home / $ USER / Desktop)并用下面的内容填充它。
ABC DEF GHI JKL MNO PQR STU VWX Y Z普通用户在这种情况下会做什么? 。一 ,他将首先创建文件,最好使用 Touch命令 ,如:
$ touch /home/$USER/Desktop/test湾他会用文本编辑器打开该文件,这可能是 纳米 ,VIM,或任何其他编辑器。
$ nano /home/$USER/Desktop/test角他会然后把上面的文字到这个文件中,保存并退出。 因此,无论他/她采取什么时间,他需要至少3个步骤来执行上述情况。 什么是智能经验的Linux-er会做什么?他只需在一次性终端上键入以下文本,并完成。他不需要分别做每个动作。
cat << EOF > /home/$USER/Desktop/test ABC DEF GHI JKL MNO PQR STU VWX Y Z EOF您可以使用“ 猫 ”命令来检查,如果该文件及其内容均成功与否创建。
$ cat /home/avi/Desktop/test
我们在Linux上经常处理档案(特别是TAR球)。在许多情况下,我们必须在除下载文件夹之外的某个位置使用该TAR球。我们在这种情况下做什么?
我们通常在这种情况下做两件事。 。一个复制/移动的tar球和目的地提取它,因为:$ cp firefox-37.0.2.tar.bz2 /opt/ or $ mv firefox-37.0.2.tar.bz2 /opt/湾 CD到 / opt /目录 下 。
$ cd /opt/角解压包。
# tar -jxvf firefox-37.0.2.tar.bz2我们可以做到这一点。 我们将提取Tarball的位置,并将提取的存档复制/移动到所需的目标位置:
$ tar -jxvf firefox-37.0.2.tar.bz2 $ cp -R firefox/ /opt/ or $ mv firefox/ /opt/在任一情况下,工作都需要两个或多个步骤来完成。专业人员可以一步完成这项任务:
$ tar -jxvf firefox-37.0.2.tar.bz2 -C /opt/选项 -C使得tar中提取指定的文件夹(这里 的/ opt /)存档。 不,它不是一个选项 (-C),但它是一种习惯。 请使用选项 -Ctar的习惯。 它会缓解你的生活。 从现在开始不要移动存档或复制/移动提取的文件,只留下在 下载文件夹中的TAR-球并提取任何你想要的。
4.我们如何以传统方式杀死进程?
在最一般的方法,我们首先使用命令列出所有的进程ps -A
和使用
grep管道它找到一个进程/服务(说
的Apache2),简称为:
$ ps -A | grep -i apache2
示例输出
1006 ? 00:00:00 apache2 2702 ? 00:00:00 apache2 2703 ? 00:00:00 apache2 2704 ? 00:00:00 apache2 2705 ? 00:00:00 apache2 2706 ? 00:00:00 apache2 2707 ? 00:00:00 apache2以上显示所有正在运行的进程 的Apache2与他们的 PID的 ,然后你可以使用这些PID的杀Apache2中下面的命令的帮助。
# kill 1006 2702 2703 2704 2705 2706 2707然后交叉检查,如果名称为 “Apache2的 '任何进程/服务正在运行与否,如下:
$ ps -A | grep -i apache2但是,我们可以使用像 指派,和 pkill的事业更容易理解的形式去做。 你可能只是通过 指派,找到一个过程的相关信息。 说你要找到 apache2的进程信息,您可以简单地做:
$ pgrep apache2
示例输出
15396 15400 15401 15402 15403 15404 15405您也可以通过运行列出进程名反对 PID。
$ pgrep -l apache2
示例输出
15396 apache2 15400 apache2 15401 apache2 15402 apache2 15403 apache2 15404 apache2 15405 apache2要使用 pkill的杀的过程非常简单。 你只需键入要杀死的资源的名称,你就完成了。 我已经写上 pkill的一个职位,你可能想在这里是指: https://www.youcl.com/info/10262 。 杀死一个进程使用 pkill的 (说 的Apache2),所有你需要做的是:
# pkill apache2您可以验证是否 Apache2的已通过运行以下命令杀死与否。
$ pgrep -l apache2它返回的提示和印刷品没有什么意味着是 Apache2的名称没有运行进程。 这就是现在,从我。所有上面讨论的点都不够,但肯定会有帮助。我们不仅意味着生产的教程,让你学习新的东西每一次,也想展示“ 如何在同一个框架更富有成效 ”。请在下面的评论中向我们提供您宝贵的反馈。保持连接。保持评论。