linux--介绍和指令练习
程序员文章站
2023-03-26 20:37:23
Linux linux的优势 基础指令练习 常见指令 增 删 改 查 which du lsattr命令 wget命令 echo命令 echo命令用于在终端输出字符串或变量提取后的值,格式是“echo 【字符串|$变量】” 移动命令 复制 特殊符号 Linux快捷键 数据库 练习 ......
linux
linux就是个操作系统:它和windows xp、windows7、8、10什么的一样就是一个操作系统而已! linux能干什么:能当服务器,在服务器上安装者各种企业应用、服务。 比如:web服务(nginx,apache,例如淘宝网站就是二次开发的tengine服务器)、数据库(mysql,存储网站信息数据的)、路飞学城等等…… linux系统用在哪些领域:例如淘宝、京东的服务器就是linux系统,再比如美团、滴滴、快手、xx直播,总之他们都是linux服务器。linux同时也在桌面领域(windows桌面)、嵌入式领域(阿里云的yunos,安卓操作系统)、大数据\云计算的领域迅速发展
linux的优势
linux以高效和灵活主城,linux同事具有多任务、多用户的能力,支持多线程,多cpu。 linux包括了文本编辑器,高级语言编译器,以及图形用户界面登应用软件,当然绝大多数服务器都是使用命令行,文本模式操作linux的。 linux遵循gnu通用公共许可协议,属于*软件,用户不需要支付费用就可以获得系统和系统源代码,无偿使用且*传播。 linux具有很高的系统稳定性和可靠性。具有很高的系统安全性众多业界厂商支持,如ibm、oracle、intel、hp、google等有完善的数据库平台,包括oracle、db/2、sybase、mysql、postgresql等。有完善的图形化用户界面,包括gnome、kde等。有完善的开发平台,包括c/c++、java、python等。
基础指令练习
常见指令
增
创建一个目录: mkdir /test 递归创建:(在test目录下创建new) mkdir -p /test/new 递归创建:test/a,b,c,d四个目录 mkdir -p test/{a,b,c,d} 递归创建文件夹:a/b/c/d/e mkdir -p a/b/c/d/e touch 文件 例如:touch xxx.py 1.如果文件已经存在,修改文件的访问时间 2.如果文件不存在,则创建这个文件 vi/vim编辑器,编辑文件 步骤 1. vi 文件名 打开文件,进入命令模式 2. 输入 a i o ,其一的字符,进入编辑模式 a append 在光标后开始写入 i insert 在光标当前位置开始编辑 o 在光标下一行开始编辑 3.代码写完后,退出编辑模式,按下esc,回到命令模式 4.输入 冒号,进入底线命令模式 :q 直接不保存退出 :q! 不保存强制退出 :wq 保存退出 :wq! 强制写入内容且退出 vi:类似于window的记事本,文本编辑器 vim:如同notepad++,高级文本编辑器,支持编程
删
rm 删除文件 (remove移除的意思) rm -i 文件 #删除文件且交互式提示,是否删除 ,系统做了别名,默认加上rm -i rm -r 文件夹 #递归删除文件夹 rm -f 文件 #强制删除文件,且不提示 rm -rf 文件 #删除一切的命令,很危险 rm命令,随时快照虚拟机
改
cd (change directory ) 更改工作目录 cd / #进入到根目录下 python filename.py mv(move 移动和重命名的作用) mv heiheihei.txt 才徐坤.txt # 格式:mv 旧的文件名 新的文件名 mv 文件 文件夹 #更改目录 systemctl restart network #重启网络服务
查
pwd (翻译全称print work directory) ,打印当前工作目录 ls (list 列出目录的内容) ls / #显示根目录下的内容 ls -a /tmp #列出/tmp目录下的所有文件以及隐藏文件 tree命令,以树状图显示文件目录结构 yum install tree -y # 如同 pip3 install django (这个命令随便在哪敲,安装在默认路径) rpm -ql tree #查询命令的所有安装路径 cat 文件名 #查看文件内容 alias: 语法 alias命令 参数="别名" alias rm='rm -i' wc: wc命令的功能为统计指定文件中的字节数、字数、行数, 并将统计结果显示输出。 - c 统计字节数。 - l 统计行数。 - w 统计字数。 wc -lcw /etc/passwd 18 26 798 /etc/passwd(行数、字数、字节数、文件名)
which
which命令用于查找并显示给定命令的绝对路径,环境变量path中保存了查找命令时需要遍历的目录。which指令会在环境变量$path设置的目录里查找符合条件的文件。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。which pwdwhich python 举个栗子: which python #python命令在哪 /usr/bin/python #命令文件绝对路径
du
linux du命令用于显示目录或文件的大小。 du会显示指定的目录或文件所占用的磁盘空间。 格式 du 参数 文件或目录 -s 显示总计 -h 以k,m,g为单位显示,可读性强 举个栗子: 显示目录或文件所占空间 du 什么都不跟,代表显示当前目录所有文件大小 显示/home的总大小 du -sh /home
lsattr命令
查看文件隐藏属性 lsattr test.py
wget命令
wget命令用于在终端下载网络文件 参数是 wget [参数] 下载地址 wget -r -p http://www.luffycity.com#递归下载路飞所有资源,保存到www.luffycity.com文件中
echo命令
echo命令用于在终端输出字符串或变量提取后的值,格式是“echo 【字符串|$变量】”
#默认吧内容显示到终端上 /tmp/xxxx.txt $path #取出打印path的值
移动命令
移动(搬家)命令 > move > mv mv /home/shahe/tj/tmp/chaoyang 文件/文件夹改名mv x.log xx.log
复制
复制 > copy > cp #移动xxx.py到/tmp目录下 cp xxx.py /tmp/ #移动xxx.py顺便改名为tj.py cp xxx.py /tmp/tj.py linux下面很多命令,一般没有办法直接处理文件夹,因此需要加上(参数) cp -r 递归,复制目录以及目录的子孙后代 cp -p 复制文件,同时保持文件属性不变 可以用stat cp -a 相当于-pdr #递归复制test文件夹,为test2 cp -r test test2 cp是个好命令,操作文件前,先备份 cp main.py main.py.bak
特殊符号
输入/输出 重定向符号 1.>> 追加重定向,把文字追加到文件的结尾 2.> 重定向符号,清空原文件所有内容,然后把文字覆盖到文件末尾 3.< 输入重定向 4.<< 将输入结果输入重定向 echo "tj-python666" > /tmp/tj.txt echo "tj666" >> /tmp/tj.txt cat >>/tmp/tj.txt << eof 我想把命令执行的结果信息,写入到文件中 ip addr > /tmp/network.txt #标准输出重定向 把命令执行结果信息,放入到文件中 3.通配符 ls -l /etc/us*
linux快捷键
1.tab键 用于自动补全命令/文件名/目录名 2.ctrl + l 清理终端显示 3.clear/cls 清理终端显示 4.ctrl + c 终止当前操作
数据库
#登录数据库 -u 指定用户名 -p指定密码 -h指定数据库主机地址 mysql -uroot -p -h 123.206.16.61 #备份数据库,备份所有的库表 > 导入 mysqldump -uroot -p --all-databases > /opt/alldatabases.sql
练习
1.服务器有哪些硬件? cpu、主板、内存、显卡、硬盘、电源、机箱等构成。 2.内存,cpu,硬盘的作用? cpu,电脑的主芯片,就像人的大脑,数据的交换在这里进行,所以,它功能越好,交换越快 显卡,主控显示画质方面,保持画质的清楚流畅,游戏必不可缺,当然,其他方面也需要,但不如游戏那样的要求高 硬盘,一个容量硬件,你的软件之类的都需要一个空间来存放,就是它了,就像一个仓库一样,你把你需要存放的东西都放进去,当你需要用的时候再取出来,所以,它需要有足够大的空间,空间太小了就会导致东西放不下,取东西也不方便 内存,一个暂存硬件,你的所有要处理的信息不可能一下子都挤到cpu上,需要先放在一个地方,就是内存了,再由内存与cpu进行一步一步的信息交换,最后完成指令,所以,内存对于处理速度也有重要的影响 3.服务器常见品牌? ibm,浪潮,thinkserver,华为,曙光,dell,hp等。 4.操作系统的作用? 操作系统位于底层硬件与用户之间,是两者沟通的桥梁。用户可以通过操作系统的用户界面,输入命令。操作系统则对命令进行解释,驱动硬件设备,实现用户要求 5.开源软件的特性,以及开源许可的协议 特性: 使用的自有 绝大多数开源软件免费 研究的自有 可以获得软件源代码 散布及改良的自有 可以自己传播、改良甚至销售 许可的协议: gpl许可协议 lgpl许可协议 mpl许可协议 apache许可协议 bsd许可协议 mit许可协议 6.linux优点 7.说出常见的linux发型版 1、centos 2、ubuntu 3、red hat 8.用虚拟机学linux的好处是? 利用虚拟机软件搭建linux学习环境简单,容易上手,重要的是利用虚拟机模拟出来的linux与真实的linux几乎没有区别 可以同时开启多个linux虚拟机 使用虚拟机系统环境,我们可以随意对虚拟系统进行设置和更改操作 1.查看linux的path变量 [root@localhost ~]# echo $path /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin 2.简述linux的文档目录结构 3.递归创建文件夹/tmp/tj/python/{alex,wusir,nvshen,xiaofeng} [root@localhost ~]# mkdir -p /tmp/tj/python/{alex,wusir,nvshen,xiaofeng} 4.显示/tmp/下所有内容详细信息 ls -la /tmp/* #24s ks-script-kw6kba tjvmware-root yum.log 5.简述 / ~ - 的含义 / 斜线 (forward slash)在路径表示时根目录 ~ 用户家目录 - 上次的工作目录,这个符号代表上次的工作目录 6.请简述你如何使用vi命令 1. vi 文件名 ,打开文件,进入命令模式 2. 输入 a i o ,其一的字符,进入编辑模式 a append 在光标后开始写入 i insert 在光标当前位置开始编辑 o 在光标下一行开始编辑 3.代码写完后,退出编辑模式,按下esc,回到命令模式 4.输入 冒号,进入底线命令模式 :q 直接不保存退出 :q! 不保存强制退出 :wq 保存退出 :wq! 强制写入内容且退出 7.查看/etc/passwd的内容并且打印行号 cat -n /etc-passwd 8.查看文本有哪些命令? cat tac head tail more 9.linux xshell常用快捷键? 1.tab键 用于自动补全命令/文件名/目录名 2.ctrl + l 清理终端显示 3.clear/cls 清理终端显示 4.ctrl + c 终止当前操作 10.如何用echo清空一个文件? echo > test.txt 11.复制/tmp/下所有内容到/home,在修改文件前,先拷贝一份,防止内容被破坏 cp -r /tmp/* /home 12.重命名test.py为my.py mv test.py my.py 13.强制删除/tmp下内容 rm -rf /tmp/* 14.找到服务器上的settings.py find / -name settings.py 15.找到/etc下的网卡配置文件,提示网卡配置文件名是ifc开头 find /etc -type f -name ifc* #/etc/sysconfig/network-scripts/ifcfg-lo #/etc/sysconfig/network-scripts/ifcfg-ens33 15.请先cp /etc/passwd /tmp/ 拷贝一份文件 cp /etc/passwd /tmp/ 16.过滤出/tmp/passwd下有关root的信息 grep -i 'root' /tmp/passwd #1:root:x:0:0:root:/root:/bin/bash 17.过滤出/tmp/passwd下除了/sbin/nologin的信息,且打印行号 cat /tmp/passwd |grep -v /sbin/nologin -n grep -v '/sbin/nologin' /tmp/passwd #1:root:x:0:0:root:/root:/bin/bash #6:sync:x:5:0:sync:/sbin:/bin/sync #7:shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown #8:halt:x:7:0:halt:/sbin:/sbin/halt 18.查看/tmp/passwd前25行 head -25 /tmp/passwd 19.查看/tm/passwd后3行 tail -3 /tmp/passwd 20.不间断打印/var/log/py.log的信息 tail -f /var/log/py.log 23.配置rm别名为“禁止你用rm,谢谢”,然后取消别名 alias rm="echo 禁止你用rm,谢谢" unalias rm 24.将服务器1的/tmp/my.py远程传输到服务器2的/opt/目录下 #传输本地文件到远程地址 scp 本地文件 远程用户名@远程ip:远程文件夹/ scp 本地文件 远程用户名@远程ip:远程文件夹/远程文件名 scp /tmp/my.py root@192.168.1.155:/home/ scp /tmp/my.py root@192.168.1.155:/home/tj_python.py scp -r 本地文件夹 远程用户名@远程ip:远程文件夹/ scp -r /tmp/tj root@192.168.1.155:/home/tj 25.将服务器2的/opt/test.py拷贝到服务器1的/home目录下 #复制远程文件到本地 scp root@192.168.1.155:/home/tj.txt /tmp/tj.txt scp -r root@192.168.1.155:/home/tj/home/ 26.统计/var/log/文件夹大小 du -sh /var/log # 2.9m /var/log 27.简述top的常见参数 total 进程总数 running 正在运行的进程数 sleeping 睡眠的进程数 stopped 停止的进程数 zombie 僵尸进程数 28.给settings.py加锁,禁止删除 chattr +i settings.py 29.同步服务器时间到ntp.aliyun.com ntpdate -u ntp.aliyun.com 30.下载http://pythonav.cn/xiaobo.jpg图片 wget http://pythonav.cn/xiaobo.jpg