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”的空文件。然后,您可以在编辑器中打开文件并进行编辑。如何编辑文件
这是我的意思,最好通过图形界面来实现!但是,如果没有这种可能性,那么...如果您使用无处不在的程序,则有两种选择:- nano是为初学者设计的更简单的程序
- vim-更复杂,但是可以做很多事情
让我们从nano开始。在文件中指定命令名称和路径:nano test_env.json
使用箭头按钮在文件中移动。编辑完文件后,单击:关于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将启动:
另请参见:如何安装LinuxYum 程序,备忘单 -各种选项和插件如何运行应用程序
一些应用程序通过脚本运行。例如,要启动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.jpg和504.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-它是什么以及如何使用它