用户和组
1、创建用户名 比如useradd beifeng
2、设置用户密码,比如passwd beifeng
3、删除用户:userdel 用户名
选项:-r 彻底删除用户信息
4、查看用户 id+用户名
5、退出用户:exit设置主机名
*暂时性设置# hostname hadoop-senior.ibeifeng.com
*永久性设置:# vi /etc/sysconfig/network
设置:
NETWORKING=yes
HOSTNAME=hadoop-senior.ibeifeng.com主机名与IP地址的映射
配置文件:
Linux环境下:
vi /etc/hosts
192.168.187.129 hadoop-senior.ibeifeng.com hadoop-senior
windows环境下:C:\Windows\System32\drivers\etc\hosts
192.168.187.129 hadoop-senior.ibeifeng.com hadoop-senior
开机启动网卡设置
ONBOOT=yes服务设置 BOOTPROTO=none 1、DHCP 自动获取IP 2、static固定IP 实际工作中建议static 3、none 未指定和固定IP
测试
ping通外网需要设置DNS解析
DNS1=192.168.189.2
service network restart
配置网络服务解析位置:/etc/resolv.conf
查看网卡命令:# route -n查看当前所在位置
pwd
etc存放的是系统的配置管理文件
home存放的是用户的主目录信息
root存放的是root用户的主目录信息
dev存放系统设备文件
boot存放的是系统启动加载的目录
系统命令存放在bin和sbin中- 进入到某个目录下
#cd /boot/grub
- 进入到某个目录下
回到主目录
cd /
ls查看目录里面的内容
ls:显示有哪些文件
ll/ls-l显示文件的详细内容
显示某字母开头,某个字母结尾
#ls | grep ‘^ns.*.conf$’模糊查找
find .amin - 10#查找在系统中最后10分钟访问的文件
find . -atime -2 # 查找在系统中最后48小时访问的文件
find . -empty # 查找在系统中为空的文件或者文件夹
find . -group cat # 查找在系统中属于 groupcat的文件
find . -mmin -5 # 查找在系统中最后5分钟里修改过的文件
find . -mtime -1 #查找在系统中最后24小时里修改过的文件
find . -nouser #查找在系统中属于作废用户的文件
find . -user fred #查找在系统中属于FRED这个用户的文件在当前目录搜索文件内容含有某字符串(大小写敏感)的文件:
find . -type f | xargs grep ‘your_string’在当前目录搜索文件内容含有某字符串(大小写敏感)的特定文件:
find . -type f -name ‘*.sh’ | xargs grep ‘your_string’在当前目录搜索文件内容含有某字符串(忽略大小写)的特定文件:
find . -type f -name ‘*.sh’ | xargs grep -i ‘your_string’查找文件;
find +目录+文件名find 命令选项:-name 通过文件名搜索
全盘查找:# find / -name init
在查找的过程中尽量的缩小查找的范围
# find /etc/sysconfig -name init
查找包含关键字的用法
# find / -name init
查找以init开头的文件# find /etc/ -name init*
通配符:*、?
* 匹配任意字符
?匹配单个字符
选项:-size
根据文件的大小来进行查询
指定方式:
1、+ 表示大于
2、— 表示小于
3、不加符号 表示等于选项:-user 按照所有者查找 # find /root -user root
创建多层目录
mkdir -p /uml/movie/cartoon
删除目录:
rm -rf +绝对路径
删除目录和文件
文件# rm files.txt
目录# rm -r test/
[选项-r 表示删除目录;选项-f 表示强制操作]
rm dir (空目录)同时创建多个文件
$ touch humanq.rmvb nezhao.mp4复制文件并重命名
cp test.sh test1.sh(重命名)
cp 文件名 文件目录
cp -r 目录名 文件目录
[选项-r复制目录;选项-p保留原文件属性]重命名与移动
mv src dest
重命名 src dest 在同一目录下
移动 src dest 不在同一目录下或者dest是目录,src是文件创建链接(快捷方式)
软链接(soft link)
#| ln−sfile/dirlinkname例如: ln -s readme.txt rm.txt
硬链接(hard link)
#|$ ln file/dir linkname
区别:删除链接时是否删除原文件查看
cat:查看全部的内容(少)
显示文件内容 # cat /etc/issue
倒过来显示文件内容# tac /etc/issue
more:分页查看文件内容(大)
tail:末尾内容查看【参数:-(行数,默认10)f】实时查看日志信息
查看文件末尾几行,默认不指定显示10行
tail -6 /etc/services
head:文件开头查看(内容的模式)
查看文件前几行,默认不指定显示10行
# head -5 /etc/passwd设置普通用户的sudo权限
root ALL=(ALL) ALL:
1、root第一个是用户名
2、ALL被管理主机的地址可以使ALL 或者IP
3、(ALL)可以使用的身份,可以不写,默认root用户
4、ALL 要操作的命令
配置示例:
root ALL=(ALL)root ALL
beifeng ALL=/sbin/shutdown -r now使用格式: $ sudo shutdown -r now 编辑:#vi /etc/sudoers 在开头写入:root ALL=(ALL) ALL ibeifeng ALL=(ALL) ALL 改变权限:#chmod 440 /etc/sudoers 防火墙的管理 (1)查看防火墙的状态 sudo service iptables status (2)关闭防火墙:sudo service iptables stop (3)开启防火墙:sudo service iptables start
文件管理
文件类型:文件(-)、目录(win7下的文件夹 d)、链接(win7下的快捷方式 l)
例子:
-rw-rw-r–. 1 ibeifeng ibeifeng 19728 Jun 5 16:57 bf-log.txt
第一部分:
- (文件类型) {rw- (拥有者u user)rw-(属于组 group g)r– (其他o other)}:表示此文件针对不同用户的权限
文件权限:r(可读 4)、w(可写 2)、x(可执行 1)-(没有任何权限)
r:读 可以查看文件 cat more tail head
w:写 创建删除文件 mkdir touch vi
x:执行 进入到目录文件中 cd
第二部分:
ibeifeng(拥有者) ibeifeng(所属组)
针对不同用户设置权限:
#chmod g/o/u +/- r/w/x 文件名称
#chmod 数字 文件名称
改变文件拥有者:
#chown ibeifeng 文件绝对路径
改变所属组:
#chgrp ibeifeng 文件绝对路径
针对目录改变(递归)
#chown -R ibeifeng 目录路径
同时改变(文件拥有、组):
#chown senior:senior 文件名vi编辑器
vi/vim + 文件名
在vi/vim查看模式下:
dd:表示删除光标所在行的内容
ZZ:保存
x:表示光标处的字符删除
o:表示光标的下一行插入
w:表示保存写入
q:退出
!:表示强制操作
wq!可以连用VI快捷方式: 1、显示行号:set nu(在编辑模式下进行) 2、删除单行:小写dd(在命令模式下进行)带有剪切功能 3、连续删除多行:比如三行就是小写3dd(在命令模式下进行) 4、黏贴:小写p(在命令模式下进行) 5、复制:小写yy(在命令模式下进行) 6、光标快速移动到文件末尾行,按大写G(在命令模式下进行) 7、光标快速移动到文件第一行,按小写gg(在命令模式下进行) 8、撤回上一步的操作,按小写u(在命令模式下进行) 9、光标快速移动到指定的行,比如:80(在编辑模式下进行) 10、替换,比如:1,$s/nologin/88888/g 1:代表第一行 $:代表最后一行 s: 代表替换 /:代表分割 g: 代表通行 1,$代表一个范围,比如:5,10或者 10,20
查看Linux系统信息
uname:查看系统名称
uname -r查看系统的具体信息
cat /proc/cpuinfo查看CPU信息
cat /proc/meminfo 查看内存信息
date 查看时间 【R】时区
cal +年份,显示某年份的日历表
设置系统时间
#date -s 2015-09-30 14:42:45磁盘情况
显示已挂在分区的使用情况: sudo df -lh
显示目录的容量大小:du -sh /home/ibeifeng
显示磁盘详细信息:# fdisk -l
显示挂载磁盘信息: #mount
挂载磁盘:#mount /dev/sdb1 /data01
卸载磁盘:#unmount /dev/sdb1
查看系统内存的使用情况:free -M
查看进程信息:top -MLinux下软件的安装方式
第一种:rpm方式
查看某个软件是否安装:
#rpm -qa | grep java
卸载已经安装的软件
#rpm -e –nodesps +软件名(多个用空格隔开)
安装软件:#rpm -ivh xxx.rpm
第二种方式:tar包
zip软件:
解压: unzipxxx.zip压缩: zip yy.zip 文件路径
tar软件:
tar−zxvfxxx.tar.gz(当前目录下) tar -zxvf xxx.tar.gz C dir(文件路径)
压缩:$tar zcvf dir/file
第三种方式:yum安装安装jdk
(1)给tar包执行权限
(2)解压tar包 tar -zxvf +名称
(3)进入jdk目录下bin
(4)切换到root用户
(5)配置环境变量 vi /etc/profile
在文件最后插入
##JAVA_HOME
export JAVA_HOME = jdk的解压目录
export PATH= PATH:/ JAVA_HOME/bin
(6)source /etc/profile重新启动shell编程
shell程序是文本文件(批量操作Linux命令集合)该文件能够被shell解释执行,以.sh作为后缀名
变量使用 变量类型:根据作用类型,变量可以分为本地变量和环境变量变量赋值:等号两边不能有空格,如果赋空值,可以在等号后面跟一个换行符回显变量的值:exho var 或echo var清除变量:unsetvar显示所有的用户变量:set位置参量: 0当前脚本的文件名
#参数的个数*/ @以单个字符串显示所有的字符参量 脚本运行的当前进程编号 !最后一个后台进程号
?0表示没有错误,非0表示错误 1,2,3…9、 10参数编号数组:数组定义初始化:arr=(mathenglishchinese)数组引用: {arr[0]} 引用
{#arr[*]} 数组个数{arr[*]} 所有元素
arr[0] =chemical 赋值
for语句
脚本判断:
1、关于文档名的【文档类型】判断,如test -e filename表示
-e 该文档是否存在
-f 该文档名是否存在且为文档【file】
-d 该【文件名】是否存在且目录(directory)
2、关于档案的权限侦测 test -r filename
-r -w -x
3、关于两个整数之间的判定
-eq -ne
-gl -lt
-ge -le
4、判定字符串的数据
test -z String:string 为0,则为true
test -n String:string 为0,则为false
test str1=str2/str1!=str2语法:for i in do 命令序列(集合) done 语法2:for((i=1;i<=10;i++));do sum=$(($sum+$i)) done while循环 语法1:while[ 条件 ] do 命令序列(集合) done 语法2:while read -r line do 命令序列(集合) done read 表示从标准输入读取一行,并把输入的每个字段的指定给shell变量 选项:-r 代表允许使用特殊的字符包括反斜杠\ line:表示变量名 案例: #!/bin/bash i=1 SUM=0 while [ $i -le 10 ] do SUM=$((SUM+i)) i=$[i+1] done echo $SUM echo "-------------------------------------" while read -r s do echo $s:Hello每一行的末尾每一行显示指定的字符用:隔开(原文件没有被修改) done < /etc/passwd##通过小于符号将查看内容的文件传输给while命令,然后while要结合read命令 awk命令: 语法:awk '条件1 {动作1} 条件2 {动作2} 条件3 {动作3}...' 文件名 作用:可以格式化输出一些内容,printf 还可以输入控制流语句 管道符号同样支持AWK命令 $ awk '{printf $1 "\t" $5 "\n"}' gerry.txt # df -h | awk '{print $1 "\t" $5}' 选项:-F指定分隔符 printf与print的区别: 前者需要手动添加“\n”,后者不需要,自动添加 需求: 格式:用户名+HELLO,拿passwd文件来举例 反引号:代表预先执行 if语句 语法1:判断2是否等于2 #!/bin/bash if [ 2 -eq 2 ] then echo YES fi 如果不相等,则没有输出结果 if后必须空格,否则报错 if [ 3 -eq 2 ] 语法2: 判断tmp下有没有123目录,没有则创建 #!/bin/bash if [ -d /tmp/123 ];then ls /tmp/123 else mkdir /tmp/123 fi \反斜杠代表可以换行继续输入命令 case语句: 系统管理命令用户提示手册 #!/bin/bash case $1 in top) top ;; free) free ;; df) df ;; *) echo "usgae:$0{top|free|df}" esac 需求:用户输入一个字符,判断是否为字母、数字或者其他字符 并输入相应的提示信息 a-z A-Z 0-9 read -p "pree some key.then prees return :" KEY case $KEY in [a-z][A-Z]) echo "it is a letter" ;; [0-9]) echo "it is a digit" ;; *) echo "it is hkjhkjbmn,k" esac Crontab计划任务 1、at --指定时间执行特定任务 用法;at +时间 at 1:23 at> cp /etc/passwd /tmpz 执行任务 先将系统时间调准确 date -s +“时间” 在某个时间点某一个时刻,想让系统完成一件事,就可以用at命令执行 2、周期性任务 crontab ---周期性执行任务 用法:crontab [-u 用户][-l][] 前提:开启服务器$ service crond status/start/stop 查看系统的服务,是否开机启动#/$chkconfig -list NetworkManager 0:off 1:off 2:on 3:on 4:on 5:on 6:off 数字代表启动级别 以/etc/passwd为例:每周三的凌晨2点备份passwd文件 第1列 第2列 第3列 第4列 第5列 分 时 日 月 周 cmd * * * * * cmd标题 0 2 * * 3 cp /etc/passwd /tmp执行任务 5 1 10,25 * * rm -rf /tmp/*每个月10号和25号凌晨1点5分执行删除命令 */10 * * * * ntpdate 时间服务器,每10分钟执行一次 0 1-6 * * * mkdir 每天1-6点执行 进入设置状态:#crontab -e 编辑命令:*/1 * * * * date >> /tmp/date.log 重启服务:$ service crond restart 查看信息:$ tail -f /home/ibeifeng/bf-log.txt
特殊符号
1、管道符号
用竖线表示:|
意思:将前面一个命令的输出结果传递给后面的命令处理
示例:# cat /etc/passwd | more
grep:表示过滤筛选的意思
结合管道符号一起使用,筛选过滤关键字
# cat /etc/passwd | grep ‘root’
# cat /etc/passwd | head -3
2、追加符号
用>>符号表示,注意要用英文输入法输入
注意,如果系统中追加文件不存在,则会自动创建
# ifconfig | grep ’ inet6 addr:’ >> /eth0.log
# head -3 /etc/passwd >> tmp.pass
3、覆盖符号
用>符号表示
# ifconfig | grep ’ inet6 addr:’ > /eth0.log
4、 wc命令
统计,可以统计字符数,单词数,行数
选项:-l行数,line
示例:# wc -l /etc/passwd
结合管道符号 wc连用:
示例:# head -3 /etc/passwd | wc -l
# ps -ef查看系统进程
# ps -ef | wc -l
5、man命令
按空格翻页查看
按:/选项 查找想要查看的指定信息
按小写n继续查找
按小写q退出浏览磁盘分区与挂载
# fdisk -l 查看系统所有设备的信息(硬盘)/dev/sda其中的sda表示系统中第一块硬盘 sda1代表这块硬盘中的第一个分区。。以此类推 Linux中通过文件来管理磁盘 brw-rw----. 其中b代表块,block的意思 ,块的设备文件 drw-rw----. 其中d代表目录,data的意思 都是一个占位符 cylinders:磁柱 起始磁柱start和结束磁柱end的概念 硬盘是有接口的: sata、sas一般用于服务器接口比较多 scsi、idea 个人机器 磁盘分区步骤: 1、# fdisk /dev/sdb 2、 n add a new partition 按n e extended :扩展分区 p primary partition (1-4) :主分区 一般企业中使用2+1或者3+1模式分区 2+1表示:2个主分区+1个扩展分区 一般会保留一个扩展分区 扩展分区不能直接拿来使用,必须再进行一个逻辑分区 # mkfs.ext4 /dev/sdb6 mkfs代表格式化命令 ext4代表Linux文件系统
挂载磁盘:
# mount /dev/sdb6 /mnt
挂载点目录必须存在,否则挂载失败
访问磁盘使用过挂载点,也就是它的唯一路口mount命令,代表挂载磁盘,但是是临时生效 永久挂载需要写入配置文件: 路径:/etc/fstab 严格按照格式填写
linux基本命令
最新推荐文章于 2021-05-05 07:18:41 发布