Linux系统基本命令总结:
1.ctrl+shift+ + 字体变大,ctrl+- 字体变小
2.hwj@ubuntu:~$ 哪个用户登陆的系统,~$表示一般用户,
3.切换:cd ./文件夹名/ cd ..上级目录 cd: ../../ 上两级目录 系统根目录:CD /文件夹/ ls cd:返回用户根目录
4.ls 查看当前目录下所有文件 -a:显示隐藏文件 -l显示当前路径下所有文件 ls -a1/bin 显示当前目录下所有文件,包含隐藏文件 ls *.V :列出所有后缀为“v”的文件
5.ll:显示当前路径下所有文件的详细信息 EG:权限,用户名等
6. 查看当前工作路径: pwd
7.清屏/翻页 clear
8.自动补全 tab
9.上下键:显示之前敲过的所有命令
10.权限 R可读 W 可写 X 可执行 绿色为最高权限
11.创建新目录/文件 mkdir
格式:mkdir[-m模式][-p目录] -m:按指定模式建立目录 -p建立目录时建立其所有不存在的父目录
12.提升权限 sudo
给当前目录赋予最高权限 mkdir -m 777 已存在的目录/需要建的目录
13.rm -r 直接删除目录 eg:rm -r ./a/b 删除B文件下所有目录及文件
删除目录 rmdir[-p][-s]目录
-p:删除所有以及为空的父目录cd
rm -r temp/a/b 删除b目录
rm -i /文件夹/* 删除文件夹中的所有文件
14.cat>new_file:创建一个文件 编辑内容 ctrl+c 退出,切换到该目录下, cat ./文件名(查看文件内容)
查看文件内容 cat ./文件夹名/文件名
cat>>somefile:创建一个文件并将后边的文件内容追加到创建的文件尾部
cat file1 file2>file3:合并文件 cat a.txt b.txt>c.txt
cat filename:查看文件内容
cat>>some_file:创建一个文件并将内容追加到文件夹尾部
cat file1 file2>file3:合并文件
cat filename:查看文件内容
15.在线下载编译器,sudo apt-get install vim
sudo apt-get update 刷新,让vim起作用
用编辑器编辑文件内容
vim ./aa/aa 按I进入编辑模式,esc退出编辑模式,:wq 保存
用高级记事本编辑文件内容
16.刷新系统
sudo apt-get update
17.ssh 本地互通,有此软件,其他软件就可连接到本机
sudo apt-get install ssh
18.cp命令
cp file1file2 将文件file1拷贝到file2
格式:cp[-p][-r]文件1[文件2..]目录
-i文件存在时提示,若输入Y则覆盖
-p不仅拷贝文件内容,还有修改时间等文件属性
-r拷贝目录下所有文件及子目录和他们的文件
eg:cp ./aa.txt ./f 把文件拷到文件夹
cp -r ./a/ ./f 把文件夹及他的全部子文件一起拷到文件夹
19.mv 移动文件或给文件重命名
格式:mv[-f][-i]文件1[文件2..]目标
mv file1 file2 将文件file1改名为file2
mv file1 /tmp 将文件file1移动到目录/tmp下
-i 文件存在时提示下,回复Y则覆盖
-f覆盖时不提示
20.more 命令 一般用来查看大文件的内容
逐屏显示文件 more filename
空格显示下一屏,回车显示下一行,退出ctrl+c
21.grep 在文件中查找特定字符串
格式:grep [选项] 字符串 [文件...]
选项:
-b 显示块号
-c仅显示各指定文件中包含模式的总行数
-i 模式中字母不去扥大小写
-l仅显示包含模式的文件名
-n 显示模式所在行的行号
22、head tail 显示文件起始N行,缺省值10,掐头去尾
head/tail [-n] [文件名]
23、wc 统计指定文件的行数,字符数,单词书
wc [-lwc] 文件...
-l 统计行数
-w 统计字数
-c 统计字符数
wc -l /文件/文件名 文件行数
24.file 文件 :测试文件类型
file * 显示当前目录下所有文件的类型
25、find
格式:find [选项] [参数]
选项:
fing -name 文件名
26.chmod 改变文件权限
格式:
chmod [ugoa] {+|-|=} 文件
chmod [-R] 模式 文件...[目录]
u(uesr) g(group) o(other) a(all)
主文件 同组用户 其他用户 所有用户
+ - =
增加后权限 取消后权限 置成后列权限
常用修改权限的命令:
sudo chmod 600 ××× (只有所有者有读和写的权限)
sudo chmod 644 ××× (所有者有读和写的权限,组用户只有读的权限)
sudo chmod 700 ××× (只有所有者有读和写以及执行的权限)
sudo chmod 666 ××× (每个人都有读和写的权限)
sudo chmod 777 ××× (每个人都有读和写以及执行的权限)
27、chown
修改文件主
格式:chown[-R]文件主(UID)文件
-R递归的改变所有子目录下所有文件的权限
chown -R 用户名 file1 将文件file1的文件主改成别的用户
chown -R 用户名: file1 将文件file1的文件主改成别的用户和用户主
28、touch 112050299 file 修改文件的时间
29、alias 组合命令的别名
alias xx=cd
alias xx="rm-i" 组合命令加个双引号
unalias rm 取消命令别名
30、
切换用户:
su 用户名
删除用户
sudo userdel 用户名
添加用户
sudo useradd 用户名
杀死进程
sudo kill -9 进程名
修改密码
sudo passwd 用户
查看进程
ps -ef 或 ps -aux 查看进程
31、who :显示当前所有用户
32、重启命令
reboot 重启
shutdown -r now 立即重启
shutdown -r 5 :5分钟后重启
shutdown -r 10:10 10:10重启(时间可以自己设置)
shutdown -h now 立即关机
shutdown -h 5:5分钟后关机
33、安装文件到指定目录 eg:jdk
格式:tar -zxvf ./jdk-tab自动补全 -C ./安装到指定文件夹/
JDK配置环境变量:sudo vim /etc/profile 按i进入编辑模式
在末尾加入:
# set java
export JAVA_HOME=/home/haojianqiang/java/jdk1.8.0_91
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tool.jar
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
:wq 保存退出
如果没有权限,可以去根目录cd ../../ 下--查找etc/profile -- 更改用户主为当前用户,然后重新进入编辑模式设置
设置完成后执行 source /etc/profile 使新增的环境变量生效
然后执行 java --version 检查 java 版本是否已经替换为 jdk1.8.0_91
34、在线安装Mysql数据库shell
OYCL数据库装的是库
1:apt-get install mysql-server
2:mysql -u root -p :打开数据库
show databases; 查看数据库
use 数据库名; 进入数据库
select * from 表名; 查看数据库的表
create database li:创建数据库
Use databasename 建库名
建表:
Create table tablename (
Sid int,
Sname varchar(50) );
35、Linux 下解决mysql插入中文乱码
在终端解决方案如下:
sudo gedit /etc/mysql/my.cnf
然后在[client]节点下添加:default-character-set=utf8
在[mysqld]节点下添加:character-set-server=utf8
? collation-server=utf8_general_ci
保存后重启mysql:
sudo /etc/init.d/mysql stop
sudo /etc/init.d/mysql start
再命令进入mysql:sudo mysql -u root -p
判断是否更改成功:mysql> show variables like '%char%';
36、安装deb类文件
sudo dpkg -i *.deb
--------------------------------------
linux的文件属性
linux文档权限
第一个字符表示文件类型
:默认为普通文件 d :表示目录 l :链接文件 c :字符设备文件 b :块设备文件 第二个至第四个,三个字符表示所有者权限 第五个至第七个,三个字符表示同组权限 第八个至第十个,三个字符表示非同组权限
linux的高级系统命令
top 查看内存
df -h 查看磁盘存储情况
iotop 查看磁盘IO读写(yum install iotop安装)
iotop -o 直接查看比较高的磁盘读写程序
netstat -tunlp | grep 端口号 查看端口占用情况
uptime 查看报告系统运行时长及平均负载
ps -ef 查看进程
常用文件管理命令
awk行级别过滤 sed无需交互式的修改命令 grep过滤内容
常用组合命令
jps|grep xxx|awk '{print $N}' |grep xargs kill -9 杀死任务
ps -ef |grep xxxx查看进程
netstat -apn|grep port 查看占用端口号
常用脚本工具
ssh远程登录或者发送命令 scp远程分发数据 su切换用户权限
注意点
单引号是转译,内容都是字符串,双引号是可以有表达式取值的,单引号和双引号都以最外层为主
常用的脚本开发
ips :用于存放要操作的主机列表,用回车或空格隔开
scp_all.sh :用hadoop用户拷贝当前机器的文件到其他操作机(多机分发脚本)
ssh_all.sh :用hadoop 用户可登陆其他操作机执行相应操作(多机操作脚本)
exe.sh : 执行su 命令,与ssh_root.sh 配套使用
----------------------------------------------------------------
常用系统设置命令
yum安装命令 yum -y install xxx
需要修改yum源Centos-7.repo
防火墙关闭命令
查看防火墙状态:firewall-cmd --state 关闭防火墙:systemctl stop firewalld.service 禁止防火墙开机启动: systemctl disable firewalld.service 查看服务是否开机启动: systemctl is-enabled firewalld.service
selinux操作
查看关闭状态 /usr/sbin/sestatus -v 关闭方法 vim /etc/selinux/config 把文件里的SELINUX=disabled
crontab定时器
项目 含义 范围 第一个"x" 一小时当中的第几分钟 0~59 第二个"x" 一天当中的第几小时 0~23 第三个"x" 一个月当中的第几天 1~31 第四个"x" 一年当中的第几个月 1~12 第五个"x" 一周当中的星期几 0~7(0和7都代表星期日
ssh配置
ssh-keygen -t rsa 生成密钥对
ssh-copy-id发送秘钥
秘钥位置在 ~/.ssh文件夹中