初学者的基本Linux命令

Linux是一个操作系统。像Windows(windows)一样,只有更安全。在Windows中很容易感染病毒,在Linux中几乎是不可能的。 Linux是免费的,而且您是您自己的老板:您的系统没有必然的自动更新!

没错,了解它会稍微复杂一些。因为大多数操作都是在命令行上执行的。而且,如果您在空缺中看到“ Linux知识”,那么您应该仅具有执行简单操作的能力-移至另一个目录,复制文件,创建爸爸……在本文中,我将讨论新手应该能够执行的典型操作。好吧,再加上一些对测试人员有用的东西。

我将通过示例对基本命令进行简短描述(我检查了基于cent os的系统,基于red hat的系统),还提供了指向文章的链接,您可以在其中阅读更多内容。如果您想更深入地进行研究,请参阅“有关该主题的书籍和视频”部分。还有对文章的评论,他们写了很多有用的东西)

内容






我在哪里?如何了解你在哪里


密码命令:

pwd   ---   
/home/test   ---  ,       test

当您只剩下命令行时,这是一个非常有用的命令。代表P RINT W¯¯工作会有d irectory。记住她,派上用场。



如何了解文件夹中的内容


使用ls命令可以查看目录的内容:



尽管最好立即使用带有“ l”标志的命令:

ls -l

这样的命令将显示一个更具可读性的列表,您可以在其中立即查看文件的创建日期,文件的大小,作者以及授予该文件的权限。



团队还有其他标志,但是大多数情况下,您将完全使用“ ls-l”。

另请参见:
ls Linux团队 -有关该团队及其所有标志
更多信息ls命令-查看目录 -有关该团队的初学者(不列出所有标志)



如何切换到另一个目录


使用cd命令:
cd <  >

路径可以是绝对路径或相对路径。


沿着绝对的道路


您的路径要么写在“要去的地方”,要么在图形界面(例如,在WinSCP中监视它

在“ cd”之后插入命令行路径

cd /home/student/log

好了,我们从主目录(由〜表示)移至/ home / student / log




相对路径


相对路径相对于您当前所在的当前目录。如果我已经在/ home / student中,并且需要/ home / student / log,则命令将如下所示:

cd log  ---    log   ,    

如果我需要从/ home /学生/照片/ home /学生/照片/城市/ msk / 2017 / cat_1,命令将如下所示:

cd city/msk/2017/cat_1

因为我已经在那,所以我 不写/家庭/学生/照片



在Linux中,您可以设置相对于当前用户主目录的路径。主目录用〜/表示。注意,不是〜,即〜/。此外,您已经可以指定子文件夹:

cd  ~/log

这个团队将在任何地方工作。并将我们移至/ home / user / log

这是我以学生身份登录的示例。它最初位于/ var目录中,但进入/ home / students / log




自动完成


如果您开始输入文件夹的名称并按Tab,则系统本身将替换它。如果你只是按下Tab键,而无需输入任何内容,系统会开始通过可能的选项进行排序:

- (CD选项卡),也许你的意思是文件夹1?
- (标签)不?也许文件夹2?
- (选项卡)不再吗?也许文件夹3?
- (选项卡)不再吗?也许是文件1(它遍历您当前所在的所有文件和目录的名称)?
- (选项卡)我用尽所有选项,让我们先走。资料夹1?



cd lon(Tab)-> cd long-long-long-long-name-folder-开始输入文件夹的名称,然后系统本身替换名称(位于我们所在目录中的名称)。

cd(Tab)(Tab)(Tab) -系统遍历当前目录中的所有文件/文件夹。

导航命令行时,这非常方便。无需记住文件夹的确切名称,但是您可以记住前一个字母或两个字母,这将减少选项的数量。



上楼去


上一级:

cd ..

如果您需要提高两个级别,那么

cd ../..

等等ad infinitum =)您可以使用更高级别的文件,也可以只更改目录。

请注意,Linux的命令与Windows的命令不同-斜杠不同。在Windows中为“ cd .. \ ..”,在Linux中为“ cd ../ ..”。

另请参阅:
Linux中的文件路径



如何建立目录


使用mkdir命令

mkdir test  ---     «test» ,   

您也可以在其他位置创建文件夹:

mkdir /home/test   ---   «test»   /home,    
  

什么时候需要?例如,如果您需要备份日志。创建一个文件夹并在其中保存必要的日志。或者,如果您阅读了安装软件的说明,并在此处看到“创建文件夹”。通过命令行以这种方式完成此操作。

另请参阅:
如何使用mkdir命令在Linux上创建目录



如何建立档案


触摸 命令

touch app.log

这样的命令将创建一个名为“ app.log”的空文件。然后,您可以在编辑器中打开文件并进行编辑。



如何编辑文件


这是我的意思,最好通过图形界面来实现!

但是,如果没有这种可能性,那么...如果您使用无处不在的程序,则有两种选择:

  1. nano是为初学者设计的更简单的程序
  2. vim-更复杂,但是可以做很多事情

让我们从nano开始。在文件中指定命令名称和路径:

nano test_env.json

使用箭头按钮在文件中移动。编辑完文件后,单击:

  • Ctrl + O-保存
  • Ctrl + X-退出

关于nano的最好部分是单击屏幕底部的提示以退出。



但是对于vim,这更加复杂。很容易进入它:

vim test_env.json
vi test_env.json     ( vim)

登录,但是如何注销,嗯?这里开始有点恐慌,因为没有一种标准组合有效:Esc,ctrl + x,ctrl + q ...如果您有第二台笔记本电脑或者至少拥有一部可以上网的手机/平板电脑,则可以在Google上搜索“如何摆脱vim”,以及如果您只有一个窗口,并且该窗口的终端被编辑器阻止了?

我分享一个秘密,要退出您需要输入:

  • :q-关闭编辑器
  • :q!-关闭编辑器而不保存(如果更改了某些内容,则仅使用“:q”将不起作用)

冒号启动命令模式,然后在此处输入q命令(退出)

最初,当我们通过vim打开文件时,我们会看到文件的内容,并在文件信息下方:



当按下冒号时,文件将显示在下面:



如果未打印,则不会出现恐慌!然后尝试按Esc键(返回正常模式),然后按Enter键(确认命令),然后再次键入。恩,它帮助了我们,我们走了!

实际上,现在一切都不那么可怕。即使您被送往无法访问Internet的银行工作,并且登录到vi并且不知道如何下车,也可以随时退出电话。荣耀到移动互联网!好吧,如果您知道服务器的登录密码,则只需关闭终端然后再次打开即可。

如果需要退出并保存更改,请使用以下命令

:w —  ;
:q —  ;

好了,关于编辑选项,请参见下面的文章=)

另请参见:
如何在Ubuntu中编辑文件 -有关不同方式的更多信息
如何使用vim文本编辑器 -有关vim及其所有选项的更多信息
如何退出Vi或Vim编辑器?-为什么按Esc键



如何传输/复制文件


假设我们在目录/ opt / app / log中app.log,我们希望将其保存在其他位置。如何将日志转移到正确的位置,如果没有图形界面,只有命令行?


复制文件


球队:

cp _ _

如果我们在/ opt / app / log目录中

cp app.log /home/olga

在此示例中,我们将相对路径用于“要复制的内容”-我们已经接近日志了,因此就采用它。对于“复制位置”,我们使用绝对路径-复制到/ home / olga

您可以立即重命名该文件:

cp app.log /home/olga/app_test_2020_03_08.log

在这种情况下,我们将app.log放置在/ home / olga文件夹中,并将其重命名为app_test_2020_03_08.log但是您永远不知道此文件夹中已经有多少日志,要区分它们,您可以为该文件起一个更口头的名字。

如果“复制位置”文件中已经有一个同名文件,则系统不会询问任何内容,只会覆盖它。例如,将“ app.log”文件放在主目录中的日志文件夹中,该目录已经存在: 没有错误,系统仅执行了该命令。另请参阅:在Linux中复制文件










复制目录


该命令保持不变,“ cp”,仅使用R键-“递归复制文件夹”:
cp -r  __  ___

例如:

cp /opt/app/log /home/olga

因此,在目录/ home / olga中将出现文件夹“ log”


移动档案


如果您需要移动文件而不复制文件,则可以使用mv(move)代替cp(复制

cp app.log /home/olga
mv app.log /home/olga

您可以使用相对和绝对路径:

mv /opt/app/logs/app.log /home/olga —   ,     

您可以立即重命名该文件:

mv app.log /home/olga/app_2020_03_08.log —    /home/olga  


移动目录


与移动文件类似,mv命令
mv /opt/app/log/  /home/olga/bakup/




如何删除文件


使用rm(删除)命令

rm test.txt  —   test.txt

如果您需要删除当前目录中的所有文件(例如,我们在重新安装应用程序之前先清除旧日志),请使用“ *”:

rm *  —      




如果需要删除文件夹,则必须添加-r(递归)标志

rm -r test_folder

如果要删除程序中已使用或只读的文件,系统将再次询问:



现在,假设您正在清理许多文件。并询问每个系统,您必须不断回答“是,是,是...” (y-输入,y-输入,y-输入) ...要毫无疑问地删除所有内容,请使用-f(force)标志

rm -rf test_folder    ---     



但是请记住,这是一支非常危险的团队!这样您就厌倦了确认删除并输入“ -rf”,并且错误地指定了目录...好吧,对不起,再见了您需要的文件。请谨慎使用此命令,特别是如果您具有root特权!-v

选项显示要删除的文件的名称:

rm -rfv test_folder   ---     ,     



在这里您至少可以意识到自己已经完成了什么))))

另请参见:
如何删除Linux目录


如何更改文件所有者


如果您具有root用户访问权限,则可能会执行其下的所有操作。好吧,或者很多...然后,任何创建的文件,任何文件夹都将属于root用户。

这很糟糕,因为没有其他人可以与他们合作。但是您可以将其创建为root用户,然后使用chown命令更改其所有者。可以



说我正在提高testbase服务并且他应该有权访问用户目录另一个目录中test.txt文件由于没有其他人需要这些文件,并且我是在根目录下创建的,因此只需更改所有者:

chown testbase:testbase test.txt —   
chown -R testbase:testbase user     —   

结果,它是root的所有者,并成为testbase你需要什么!

另请参阅:
Linux chown命令



如何安装应用程序


如果您习惯使用Windows,则在安装应用程序时将下载某个安装文件,然后开始并一路戳“下一步,下一步,再进一步”。在Linux中,一切都有些不同。在这里,应用程序作为软件包交付。对于每个系统,都有一个程序包管理器:

  • 百胜 -红色帽子,centos
  • dpkg,apt -debian

另请参阅:
5个针对Linux新手的最佳Linux软件包管理器

让我们看一个如何工作的示例。与Midnight Commander(mc)一起使用命令行非常方便-就像Windows上的FAR。不幸的是,该程序远非总是“干净”的发行版。

因此,您在centos 7上启动了虚拟机,因此您想调用Midnight Commander,但不高兴。

mc



可以,通过yum安装此应用程序:

yum install mc



他将在那里做一些事情,下载,然后他将根据您的大小澄清您是否同意将该程序放入。如果是,请打印“ y”:



系统完成安装。

就这样!“安装”表示没有“进一步,进一步,进一步”乏味,程序已安装!现在,如果您在命令行上键入“ mc”,则Midnight Commander将启动:



另请参见:
如何安装Linux
Yum 程序,备忘单 -各种选项和插件



如何运行应用程序


一些应用程序通过脚本运行。例如,要启动WildFly应用程序服务器,您需要转到bin文件夹并在其中运行standalone.sh扩展名为.sh的文件是脚本。

要运行脚本,您需要指定脚本的完整路径:

/opt/cdi/jboss/bin/standalone.sh —   standalone.sh

这很重要!即使您位于脚本所在的文件夹中,仅指定sh-script的名称也不会找到它。有必要这样写:

./standalone.sh —  ,      

搜索仅在写入PATH变量的目录中。因此,如果经常使用该脚本,请在其中添加路径并仅按名称调用:

standalone.sh ---   standalone.sh,      PATH

另请参阅:
在Linux上运行sh脚本 -有关脚本的更多信息。



如果应用程序作为服务启动,那么它会更容易:

service test start —     «test»
service test stop —  

为了使测试服务在系统重新启动时自动启动,请使用以下命令:

chkconfig test on

她会将服务添加到自动运行。



如何了解应用程序的安装位置


例如,要将Jenkins和newman集成到Jenkins中,必须在PATH参数中指定newman的完整路径。但是,如果通过安装命令自动安装了纽曼,该怎么办?并且您是否已经忘记了他提出的安装路径?还是根本不放?

要找出应用程序的安装位置,请使用whereis(无空格):

whereis newman







如何创建档案


即使在裸机上也可以使用的标准实用程序是tar。没错,要使用它,您需要记住标志。要创建档案,请使用cvzf的标准组合

tar -cvzf archive.tar.gz /home/test



在此示例中,我们打包了/ home / test目录,其中包含两张图片-502.jpg504.jpg

要打开包装,请将标志“ c”更改为“ x”并删除“ z”:

tar -xvf archive.tar.gz



尽管系统将其解压缩为“ / home / test”,但实际上“ test”文件夹出现在我们现在所在的位置。

让我们看看所有这些标志的含义:

  • c-在Linux中创建档案
  • x-从存档中提取文件
  • v-显示有关工作流程的详细信息(没有它,我们将看不到打包/解压缩了哪些文件)
  • f-记录档案的文件
  • z-压缩

对于包装,请使用c - C reate选项,以及对x -e X区域解包



如果您确实要使用rar,则必须退出。yum无法安装:

yum install rar
yum install unrar

说没有这样的软件包:

No package rar available.
Error: Nothing to do

必须完成一堆团队!首先,下载,解压缩并编译:

wget http://rarlabs.com/rar/rarlinux-x64-5.4.0.tar.gz
tar xzf rarlinux-x64-5.4.0.tar.gz
cd rar
make install

安装:

mkdir -p /usr/local/bin
mkdir -p /usr/local/lib
cp rar unrar /usr/local/bin
cp rarfiles.lst /etc
cp default.sfx /usr/local/lib

并申请:

unrar x test.rar

另请参阅:
在Linux上安装RAR



如何查看以前使用的命令


因此,假设您执行了一些复杂的操作。甚至不是您,而是开发人员或管理员!事情已经对您造成了影响,一位同事进来了,用钢笔和魔术刷进进出出-它有效。他做了什么?这真有趣!

或者,也许您编写了一个长命令,现在您需要重复它。笔又来了?勉强!此外,还有助手:

↑  ( «») —   
history —   1000 

如果您需要“放松”关闭,可以更轻松地滚动箭头。按下后-系统显示最后一条命令。再次单击-倒数第二个。依此类推,最多可达1000次(因为这是存储在历史记录中的数量)。



最大的好处是,即使重新启动控制台,Linux也会保留历史记录。这与Windows中的情况不同-您复制了文本,又复制了另一个,而第一个已经丢失。通常,当您重新启动系统时,所有内容都会丢失。

如果您不想戳箭头,或者已经有很长的命令了,可以打印“历史记录”并仔细研究这些命令。

另请参阅:
Linux命令历史记录 -有关历史记录功能的更多信息



如何看待空闲空间


多少可用磁盘空间

df -h

目录的重量是多少

du -sh
du -sh *  ---  



如何找出电脑的IP


如果已配置DNS名称,则使用它们将它们连接到Linux计算机。更容易记住-它的测试库,它有错...但是有时候您只需要IP。例如,如果DNS连接仅在工作网络内部可用,而同事想在家中连接,则这就是IP地址所指定的。

要查找机器的IP,请使用以下命令:

hostname -I

您还可以使用ifconfig

ifconfig —   ,      IP
ip a — ,   Ifconfig    ,   

另请参阅:
显示专用IP地址



如何找出作业系统版本


您正坐在Linux机器上的客户那里。尝试安装某些东西-不起作用。爬Google,不同的操作系统安装方法也不同。但是如何了解这台计算机上安装了哪个?

使用命令:

cat /etc/*-release



CentOs 7已安装在此虚拟机上,

如果您需要内核版本:

uname -a

另请参阅:
如何查找Linux版本



如何了解团队的工作方式


如果您不知道该命令的工作方式,则始终可以使用内置的man命令询问系统:

man ls



您可以使用q键关闭手册。这在Linux控制台中是第一次,这一点一点都不明显,而且到处都没有技巧。

该命令很方便,因为您甚至不必离开命令行,即可立即获得所有信息。另外,这始终是相关信息。而您在Google上搜索的内容未知=))

尽管我个人更容易使用google命令,因为这样一来,我会得到俄语说明+最重要的标志(可能有很多)。但是我本人对Linux还是陌生的,这是一种新手方法。最好立即学会提高人工搜索的技巧。对于执行更复杂的任务,它非常有用!

如果程序没有人,请使用-h(--help)标志

ls -h




如何创建许多测试文件夹和文件


假设我们有一个特定的测试文件夹。在其中创建一百个目录,在每个目录中创建一堆文件:

mkdir -p test/dir--{000..100}
touch test/dir--{000..100}/file-{A..Z}

仅此而已,然后您就可以和他们一起玩!



现在说明:

  • mkdir-创建目录
  • touch-创建文件(或修改现有文件,但是如果没有同名文件,该命令将创建一个新的空文件)

括号中的表达式起到循环运行并为您完成手动工作的功能的作用:

  • {000..100}-从0到100遍历所有数字
  • {A..Z}-将贯穿英文字母的所有字母,从A到Z

我如何尝试此命令。一开始,我看着自己在哪里:

$ pwd
/home/test

命令说明中的$字符表示我们编写命令的行的开头。因此,我们将自己输入的内容(pwd)与系统响应(/ home / test)分开。

是的,在主目录中。为自己创建一个沙箱:

mkdir olga

我将在其中创建!

mkdir -p olga/dir--{000..100}
touch olga/dir--{000..100}/file-{A..Z}

然后您可以检查发生了什么:

cd olga
ls -l

像这样的东西!恕我直言,有用的命令。

我在Linux命令行中找到了它们“完整指南 ”用于创建沙箱以探测find命令在这种情况下,我和作者一样,钦佩命令行的强大功能。只有2行,通过图形界面创建类似的结构会带来多大的痛苦!

而且,最重要的是,它对测试人员有用-对测试有用。



如何在Linux上测试IOPS


如果客户给您一辆车,这将非常有用。到底有SSD吗?他们会带来好运吗?如果正在开发服务器应用程序,并且需要承受负载,则需要确保已根据ToR将磁盘分配给您。

我们的应用程序积极使用磁盘。因此,如果客户希望在负载上看到好的结果,我们希望在驱动器本身的性能上看到好的结果。

但是您不能用这个词相信另一边的管理员。如果应用程序运行缓慢,他们当然会说他们做得很好,应该责怪“他们”。因此,我们必须自己测试磁盘。

我将谈论我们如何测试驱动器。如何检查它们发出多少IOPS。



我们使用fio实用程序-https: //github.com/axboe/fio/releases

1)下载最新版本,解压缩,转到目录。在下面的命令中,您需要使用列表中的当前版本替换“ fio-3.19”

cd /tmp
wget https://github.com/axboe/fio/archive/fio-3.19.tar.gz
tar xvzf fio-3.19.tar.gz
rm fio-3.19.tar.gz
cd fio-fio-3.19

2)应该有用于组装的包装

apt-get install -y gcc make libaio-dev | yum install -y make gcc libaio-devel

3)我们收集

make

4)测试

./fio -readonly -name iops -rw=randread -bs=512 -runtime=20 -iodepth 32 -filename /dev/sda -ioengine libaio -direct=1

结果应该是什么:

  • 2-3年前发布的平均SSD为50,000 IOPS。
  • 新鲜的三星960 Pro,位于我们办公室的其中一个压盖上-35万IOPS。

新鲜度是在2017年撰写本文时确定的

如果应该有5万个,并且磁盘产生的磁盘少得多,则:

-它不是SSD;
-存在网络延迟;
-安装不正确;
-他们发生了其他不好的事情,值得警惕。



这就是全部吗?


当然不是=))

检查find命令和正则表达式也很有用。至少,测试人员需要能够“抓取日志”-使用grep。但这已经是一个独立的任务。
始终需要的基础是pwd,cp,mv,mkdir,touch您可以在需要时立即轻松搜索其余部分。

这是我的其他几个链接:


要了解文件夹结构,我建议您阅读文章“ Linux OS文件夹结构。您需要什么文件夹。Linux中的内容和位置



有关该主题的书籍和视频


视频:
GNU / Linux软件-George Kuryachy的视频讲座-很好的视频讲座

书籍:
Linux命令行。威廉·肖茨
·斯科特·格兰尼曼。的Linux 袖珍指南



在哪里训练


您可以启动虚拟机。没错,在这里您首先必须弄清楚如何提高虚拟

)))或可以购买云机。当我需要使用Linux时,我去了SimpleCloud(他是第一个使用google的人,他的界面友好。但是您可以选择任何模拟产品),然后购买了最便宜的汽车-每月150卢布。一个月可以让您的眼睛“触摸一下”,这台机器的内存也最少。

我曾经有一个计划,要自己支付这150卢布,以使汽车可以进入公共场所。可惜。由于我没有尝试将其封闭(诸如ssh,ping等封闭的命令),因此我没有成功。总有一些人不喂面包,让别人的面包变质。共享密码?您的服务器有ddos攻击。好吧,服务器被阻止了。在第N个区块之后,我吐口水了。谁想学习,就会找到150r。

要连接到机器,请使用以下工具:

  • 油灰 -命令行
  • WinSCP -GUI

另请参阅:

WinSCP-它是什么以及如何使用它

All Articles