Linux是 基于Unix 的开源免费的操作系统,由于系统的稳定性和安全性几乎成为程序代码运行的最佳系统环境。 (程序基本上在Linux上发布)
Linux系统的应用非常广泛,不仅可以长时间的运行我们编写的程序代码,还可以安装在各种计算机硬件设备中,比如手机(苹果就是基于Linux, Android 最底层是Linux)、平板电脑、路由器等。
unix是一个 多用户,多任务 的操作系统 ,收费 的操作系统.(当时比Windows更小,更安全(win也收钱))

其中:
VmWare :(威睿公司)功能强大,收费产品virtualBox : oracle公司( 免费的, 有的电脑不能用)
mv,cp等命令文件);login 后输入root,回车 123456(密码,不会显示)
登录成功

,这里的~就代表root
man 命令 : 进入命令 比如man cdqCtrl+l 或输入clearpwd :显示所在文件层次
cd 目录 :进入文件夹cd 目录/目录 :进入 多层 文件夹cd /目录 :进入根目录下的目录中cd .. (或 cd ../) :上一级目录(有空格)cd / :根目录cd ./ :当前目录;cd ~ :回家(回到home中用户目录(root用户会进入root))cd - :相当于返回键(返回上一个目录)mkdir 创建mkdir -p a/b/c :创建多层目录 a/b/c (用-p)rmdir 删除
示例:删除/usr下的newTest,进入/usr下使用rm -r newTest
示例:删除/test下的newTest而不需要询问强制删除,在/test下使用rm -rf newTest
注意:rm不仅可以删除目录,也可以删除其他文件或压缩包
ls:展示的能看见的 文件(和目录)的名称ls -a: 展示 所有 的文件的名称ls -l: 显示文件的 详细信息**ll**(效果与ls -l一致)
-代表文件,d代表目录(文件夹)ll -h : 友好的显示
大小显示为k;
cat:显示文件的所有内容cat 文件名 (按tab自动补全文件名)more: 分页显示q:退出查看less: 分页显示**tail**tail -显示后面n行 文件名tail -f 文件名 : 动态的查看tail -f catalina.xxx.log
find 目录 参数find /root -name '*test*'*代表模糊查找mv 目录名称 新目录名称 :
示例:
test目录下有一个oldTest目录,改名为newTest
mv oldTest newTest
注意:mv的语法不仅可以对目录进行重命名而且也可以对各种文件,压缩包等进行 重命名的操作
mv 目录名称 目录的新位置
示例:
在test下将newTest目录剪切到 /usr下面,
mv newTest /usr
cp -r 目录名称 目录拷贝的目标位置 -----r代表递归拷贝 (子文件同时拷贝)
示例:
将/usr下的newTest拷贝到根目录下的test中,
cp -r /usr/newTest /test
注意:cp命令不仅可以拷贝目录还可以拷贝文件,压缩包等, 拷贝文件和压缩包时不 用写-r递归
touch 文件名:创建一个空白的文件示例:
在 test目录下创建一个空文件
touch aaa.txt
cp 源文件 目录/新文件名例如:
cp 1.txt 2.txt #在同一个文件夹下,复制,名字 2.txt
cp 1.txt 1/1.txt # 复制到下一级文件夹1中, 名字1 .txt
cat 文件: 只能显示 最后一屏 内容
-more 文件 : 可以显示 百分比 , 回车可以向下一行,** 空格**可以向下一页,q可以退出查看

less 文件: 查看/etc/sudo.conf文件,可以使用 键盘上的PgUp和PgDn向上和向下翻页 , q结束查看
tail -数字n 文件: 查看文件后n行, Ctrl+C结束
tail -10 sudo.conf # 查看/etc/sudo.conf文件的 后10行 ,
tail -f catalina-2016-11-11.log #监控文件的变化 动态变化
注意:命令 tail -f 文件 可以对某个文件进行动态监控,例如tomcat的日志文件, 会随着程序的运行,日志会变化
vim 文件
示例:编辑/test下的aaa.txt文件,使用vim aaa.txt
点击键盘 i/a/o(一般用i) 进入编辑模式,可以 编辑文件
i:插入模式 :在后方插入Esc ,退回命令模式;:wq保存并退出;:q!tartar 参数 文件名(打包之后显示文件名) 要打包|解压的文件目录常用的组合
- cvf :打包一个文件或者目录(不压缩)- zcvf: 打包并压缩一个文件或者目录 压缩的格式:gzip,或 .tar.gz- xvf: 解压或者打开一个tar文件: tar -xvf xxx.tar.gz-c:创建一个新tar文件-v:显示运行过程的信息-f:指定文件名-z:调用gzip压缩命令进行压缩-t:查看压缩文件的内容-x:解开tar文件例如:
- 打包:
tar -cvf test1.tar ./* #将当前目录下的 所有文件 打包成 test 1.tar:
tar -zcvf test2.tar.gz ./* #将当前目录下的所有文件打包并压缩成test2.tar.gz:
- 解压:
tar -xvf test1.tar # 将test1.tar解压到当前目录
tar -xvf test1.tar -C b # 将test1.tar解压到b目录
grep :查找文件内部字符串;查找符合条件的字符串(★),显示这一行内容,类似ctrl+f
grep 字符串 文件 :从文件中搜索字符串grep 字符串 文件 -- color :从文件中搜索字符串,并高亮显示grep 字符串 文件 -- color --B2 : 高亮显示本行和上两行grep 字符串 文件 -- color --A2 :高亮显示本行和下两行示例 :
grep lang anaconda-ks.cfg 在文件中 查找 lang
grep lang anaconda-ks.cfg -- color 高亮 显示(两道-)
grep lang anaconda-ks.cfg --color -- A2 高亮 显示3行(本行和下两行)
grep lang anaconda-ks.cfg --color --B2 (三行,本行和前两行)

pwd : 显示 当前的工作目录wget:下载 资料wget 资源路径
&& 连接,实现逻辑与的功能。示例:
mkdir test && cd test 创建目录test,进入目录test;
ps -efps -ef: 查看 当前系统中运行的进程ps –ef | grep ssh:查找某一进程killkill pid:杀掉某一进程kill -9 进程pid:杀死进程,强制杀死进程ifconfig :查看所有的网络设置,查看IP地址;ifconfig 网卡名称 down : 禁用网卡ifconfig 网卡名称 up : 启用网卡
ping :和window中一样,查看网络是够通畅;会一直连接着,要 通过 ctrl+c 取消
netstat 查看网络 端口 。 netstat -annetstat -an | grep 3306 查询3306端口占用情况
查看网卡配置:cat /etc/sysconfig/network-scripts/ifcfg-etho

若是网卡不能用,可以手动配置------将红色部分写入这个文件中
|作用是 将一个命令的输出用作另一个命令的输入;
运行命令1,结果用命令2使用;
例如:
ifconfig | grep 192.168在ifconfig的结果里查找 192.168字符串
常用:
ps -ef | grep java 查找和java相关的 进程ps -ef | grep 3306 查找和3306相关的信息其中:ps -ef 查找现在进程
| 命令 | 描述 |
|---|---|
| date | 显示当前系统时间 |
| date -s “2014-01-01 10:10:10” | 设置系统时间 |
| 命令 | 描述 |
|---|---|
| df | 显示 磁盘 信息 |
| df –h | 友好显示大小![]() |
| 命令 | 描述 |
|---|---|
| free | 显示 内存 状态 |
| free –m | 以mb单位显示内存![]() |
| 命令 | 描述 |
|---|---|
| top | 显示管理执行中的程序,类似任务管理器;动态改变; |
| 命令 | 描述 |
|---|---|
| du | 显示目录或文件的大小 |
| du –h | 显示当前目录的大小 |
| 命令 | 描述 |
|---|---|
| who | 显示目前登入系统的用户信息 |
| 命令 | 描述 |
|---|---|
| hostname | 查看当前主机名 (我定义的jsy) |
| 修改主机名 | (1)vi /etc/sysconfig/network |
| (2)修改其中的HOSTNAME就行;(需要重启起作用) |
| 命令 | 描述 |
|---|---|
| uname | 显示系统信息。(显示 Linux ) |
| uname -a | 显示本机详细信息。 依次为:内核名称(类别),主机名,内核版本号,内核版本,内核编译日期,硬件名,处理器类型,硬件平台类型,操作系统名称![]() |
vi 文件名;Esc 键;i 、o、a 键;
i:在当前位置前插入I:在当前 行 首插入a:在当前位置后插入A:在当前 行 尾插入o:在当前 行 之后插入一行O:在当前 行 之前插入一行:(冒号);esc → :q ;esc →:wq ;esc → :q!dd – 快速删除一行;R – 替换;>和>>重定向: 改变输出方式;把本来显示到控制台的内容,写入到文档中,查看文档可见;
> 重定向输出, 覆盖 原有内容;>>重定向输出, **追加 **功能;示例:
cat /etc/passwd > a.txt 将输出定向到a.txt中
cat /etc/passwd >> a.txt 输出并且追加
ifconfig > ifconfig.txt ifconfig 查询的内容保存到 ifconfig.txt中,覆盖原有内容,用 cat ifconfig.txt 可以看到内容;
若是需要管理权限的输出
sudo sh -c 'echo "hello world" > /opt/1.log'
useradd 用户名:默认会在 home 目录下给一个用户创建一个目录useradd 用户名 -d /home/目录: 创建一个用户然后在指定该用户的 家 目录(要在home下)passwd 用户名 : 回车输入密码(要确认密码)
userdel 用户名 :只是删除用户 但是不删除家home目录userdel -r 用户名 :删除用户连带家目录一起删除ssh -l 用户名 -p 22 主机(IP)例如: ssh -l tom -p 22 192.168.17.131 再也yes,输入密码;
su - 用户名(不需要输密码)exit当在创建一个新用户user时,若没有指定他所属于的组,就建立一个和该用户同名的私有组;
groupadd 组名useradd 用户名 -g 组名:创建用户指定组groupdel 组名:若组下有用户,删除不了id:查询当前用户的组信息;查看一个用户的UID和GID

用法:su [选项]… [-] [用户 [参数]… ]
示例:
su - u1切换到u1用户,并且将环境也切换到u1用户的环境(推荐使用)
su切换到root用户
root:x:0:0:root:/root:/bin/bash
shadow文件中每条记录用冒号间隔的9个字段组成.
root:x:0:
权限是 Linux中的重要概念,每个文件/目录等都具有权限,通过ls -l命令我们可以 查看某个目录下的文件或目录的权限
示例:在随意某个目录下
ls -l或ll
第一列的内容的信息解释如下: 文件的权限:

d :代表目录- :代表文件l :代表链接(可以认为是window中的快捷方式)后面的9位分为3组,每3位置一组,分别代表属主的权限,与当前用户同组的用户的权限,其他用户的权限
r: 代表权限是可读,r也可以用数字4表示w: 代表权限是可写,w也可以用数字2表示x: 代表权限是可执行,x也可以用数字1表示
通过ll展示
-)d)l)* 进入etc可以查看,相当于快捷方式注意:
chmod 000 a.txt(虽然没有任何权限,但是root依然能读写执行)
chmod 777 a.txt所有权限
chmod -R 755 * ## 为这个文件夹中的所有文件和子文件设置权限
A用户创建的文件,其他用户无法修改权限,通过这个修改文件所属用户和组来使其他用户可以修改(要在创建文件的用户或root用户中修改);
chown jsy:jsy 3.txt
## 查看权限 : -rw-r--r--. 1 jsy jsy 时间 3.txt