热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

linux下常用的操作命令

切换终端CtrlAltF[1~6]关闭Linux系统init0普通用户的提示符:$root用户的提示符:#退出终端:exitwhoami查

切换终端 Ctrl+Alt+F[1~6]
关闭Linux系统 init 0
普通用户的提示符:$
root用户的提示符:#
退出终端: exit
whoami 查看当前登录的用户是谁
who 列出目前哪些用户在系统上工作
date 看日期
date ‘月日时分年’ 更改时间 比如 date ‘120820202018’
cal 看日历
cal 7 1999 查看1999年7月份日历
clear 清屏
hwclock -s 同步硬件时间
hwclock -w 同步系统时间
useradd 创建用户 useradd pzl
passwd 更改密码 passwd pzl 123456
su 从当前用户切换到另一个用户 su - pzl
man 获取帮助信息 man useradd q键退出 或者是使用 --help 如:ls --help
ls -la 显示包括隐藏文件在内的所有文件信息
alias 起别名 alias pangzl=‘ls -l’ 之后就可以用pangzl代替ls -l命令

Linux中的一些重要目录

绝对路径和相对路径

cd ~ 当前用户的家目录 直接写 cd 也可以
cd - 返回上一次所在的目录

cp 复制文件和目录
cp 目标路径 目的路径
cp -i 拷贝前询问是否覆盖
cp -r 没有目录时会创建目录

mv 移动及修改文件和目录名
mv 目标路径 目的路径
mv aaa bbb 改名

mkdir 创建目录
mkdir -p /dir1/dir2/dir3/dir4 目录不存在时用-p
touch 创建文件
touch /dir1/dir2/dir3/dir4/a.text

rm 删除文件
rm -f 删除没有提示
rm -r 删除目录
rm -rf 啥都删 慎用

cat 查看命令
head 查看文件的头几行 默认前10行
head -2 /etc/passwd 显示头两行
tail 查看文件的后几行 默认后10行
tail -f 动态查看文件内容的变化 作用:用来查看日志
more 查看的文件以百分比的方式显示 可以用回车键下翻
less 查看可以用上下键去翻

linux权限管理

id pzl 查看pzl的信息

useradd -u 指定用户的UID
useradd -g 指定用户所属的群组
useradd -d 指定用户的家目录
useradd -c 指定用户的备注信息
useradd -s 指定用户所用的shell
useradd -u 1010 -g pzl -d /home/pangzl -c cool -s /bin/bash pangzl

userdel -r pangzl 删除用户

usermod 修改用户信息

ls -l 看到的信息
权限信息 硬链接数 属主 属组 文件大小 文件创建日期 文件名
权限信息有10位
第1位:文件类型 -代表普通文件 d代表目录 l代表软连接 b代表设备文件 p代表管道文件
2-4:属主的权限 r读 w写 x执行
5-7:属组的权限
8-10:其他用户的权限
rwx可以用数字表示 r对应4 w对应2 x对应1
rwx 是数字 7
rw 是数字 6
wx 是数字 3
chmod 664 a.txt 相当于 chmod u=rw-,g=rw-,o=r-- a.txt

chmod 更改权限
chmod u 更改属主的权限 chmod u-rw a.txt chmodu+rw a.txt chmod u=rwd a.txt
chmod g 更改属组的权限
chmod o 更改其他用户的权限

执行文件的方法
sh 文件路径
bash 文件路径
. 文件路径
./ 文件路径 (用这个)

对目录的权限
r: 可以ls该目录下的子文件名,子目录名
w: 可以在该目录下创建,删除,重命名
x: 可以cd到该目录下

chown 更改属主属组的权限
chown root.root a.txt 都改 chown .root a.txt 只改属组 chown root a.txt 只改属主
chown -R root.root /test/ 更改test目录及目录下的所有文件和目录

文件合并与归档

左面内容覆盖给右面 cat /etc/passwd new_pass.txt

左面内容追加给右面
echo 回显命令 echo ‘hello’ > new_pass.txt


wc -l /etc/passwd 统计文件有多少行
| 管道符 cat /etc/passwd | wc -l 也可以统计有多少行

归档
tar -cvf test.tar a.txt b.txt c.txt 加v可以显示打包的内容 c创建 f是名字
tar -tf test.tar 查看归档文件
tar -xvf /tmp/test/test.tar -C /opt/ 解包到opt目录 不加-C默认解包到当前目录

压缩
gzip test.txt 或者 bzip2 test.txt
解压
gunzip test.txt.gz 或者 bunzip2 test.txt.bz2

归档后直接压缩
tar czvf test.tar.gz test.txt.gz
解包
tar xvf test.tar.gz
打包目录下所有的文件
tar czvf test1.tar.gz *

vim编辑器
dd 删除光标所在的那一行 相当于剪切操作 dd后可以粘贴
u 撤销上一步操作
ctrl+r 撤销u的操作
ndd 删除光标所在的向下n行
yy 复制光标所在的那一行
nyy 复制光标所在的向下n行
p 将已复制的数据在光标下一行粘贴
P 将已复制的数据在光标上一行粘贴
np 将内容粘贴n行 100p 就是将复制的内容粘贴100次

光标移动
0 是到行首
$ 是到行尾
G 光标移动到这个文件的最后一行
nG 光标移动到第n行
gg 光标移动到第一行
补充: ctrl+a跳到命令行的首部
ctrl+e跳到命令行的尾部
H 光标移动到这个屏幕的最上方那一行的第一个字符
M 光标移动到这个屏幕的中央那一行的第一个字符
L 光标移动到这个屏幕的最下那一行的第一个字符

:set nu 显示行号
😕 查找 找到后n查找下一个 N查找上一个

Linux系统启动流程
vim /etc/inittab 更改启动级别
grub加密
bios加密

top命令 任务管理器
free命令 查看内存信息
free -m 以兆为单位
free -h 以G为单位

ps命令 用来显示当前的进程
ps aux 查看所有进程及详细信息
ps aux | grep ‘root’
grep 是筛选命令

grep ‘/bin/bash’ /etc/passwd 查看passwd文件中包含 bash的行
grep -v 反向匹配
kill 2423 杀掉进程
kill -9 2423 强制杀死进程
firefox & 可以在后台运行浏览器
jobs 查看后台运行的程序
fg %1 将程序又调到前台运行 1是后台运行程序的工作号 可用jobs查看到
pstree 查看进程树

Linux磁盘分区

fdisk -l /dev/sdb 查看磁盘信息
fdisk /dev/sdb n 回车 +5G p(查看) w(保存)
之后partprobe 更新分区列表
之后mkfs.ext4 /dev/sdb1 格式化 (注意扩展分区不能格式化)
之后挂在才可以使用 mount /dev/sdb1 /自己创建个文件夹/
df 查看挂载信息
umount 卸载
umount -l 强制卸载
mount 查看具体的挂载参数

du -sh /etc/ 统计某个目录下文件有多大
ls -i 查看文件inode号
ls -di 查看目录的inode号
df -i 查看文件inode信息

创建一个大文件
dd if=/dev/zero of=/sdb5/test bs=10G count=1

软链接和硬链接
软连接就相当于快捷方式 两个文件的inode号不一样 软连接是指向文件名的
ln -s /a/source.txt /b/des.txt des就是source的软连接 修改任何一个,另一个都会更改
删除des对source没有影响,删除source, des也就没了
硬链接两个文件的inode号是一样的 硬链接指向的是inode号
ln /a/s.txt /b/d.txt 修改任何一个,另一个都会更改,删除一个对另一个没有影响
软连接可以跨分区 硬链接不可以

ip地址与子网划分
172.16.45.10(B类) ip地址包含两部分 网络地址:172.16.0.0 主机地址:172.16.45.10
ifconfig 查看网卡信息
配置网卡信息 ifconfig eth0 192.168.10.100 netmask 255.255.255.0 ip加上子网掩码
或者是ifconfig eth0 192.168.10.100/24
(以上仅是临时配置,重启后会被重置)
service network restart 重启网络服务

永久配置网卡
vim /etc/sysconfig/network-scripts/ifcfg-eth0
BOOTPROTO 改为 static
IPADDR=192.168.11.200
NETMASK=255.255.255.0
GATEWAY=192.168.11.1
DNS1=202.106.0.20
DNS2=8.8.8.8

service NetworkManager stop 关闭网络守护进程
service NetworkManager status 查看网络守护进程

chkconfig --list 查看服务启动级别
chkconfig --level 35 NetworkManager off 关闭在3和5级别下的服务
route -n 查看网关信息
cat /etc/resolv.conf 查看DNS信息

ping -c 1 192.168.11.11 ping一次
arping -I eth0 192.168.11.11 用来检测ip地址有没有冲突

ifconfig eth0 up 开启网卡
ifconfig eth0 down 关闭网卡

iptablesn -F 或者 service iptables stop 清空防火墙规则

hostname 查看主机名
hostname pzl 临时修改主机名
vim /etc/sysconfig/network 永久修改主机名

软件包管理
本地安装:
rpm -ivh i安装 v是显示安装详细信息 h通常跟v连在一起写,能显示安装进度
可以同时装多个软件包
rpm -q 查询某个软件包
rpm -qa 查看所有的软件包 rpm -qa | grep ‘’
rpm -ql 查看软件包装在哪些位置
rpm -qi 查看包的详细信息
rpm -e 删除软件包
rpm -ivh 软件包名 --force 强制安装,覆盖安装
rpm -e dhcp-common --nodeps 因为有个包正在使用所以无法删除 所以要忽略依赖性去删除
有的包有依赖关系,需要先装某个包才能装这个包
网络安装:
rpm -ivh http://mirror.centos.org/centos-7/7/extras/x86_64/Packages/python-boto-2.25.0-2.el7.centos.noarch.rpm 会自动安装
wget http地址 下载软件包 然后再rpm安装

yum安装 能够解决依赖性
首先配置本地yum
vim /etc/yum.repos.d/local.repo

yum install dhcp 安装
yum -y install dhcp

自定义yum源
安装createrepo
mkdir /test
cp 软件包 /test
createrepo /test
修改/etc/yum.repos.d/local.repo
baseurl=file:///test

yum -y install http* 模糊安装
yum erase dhcp 卸载软件包
yum clean all 清除yum缓存
yum makecache 制作缓存

网络yum源
vim /etc/yum.repos.d/net.repo
[net]
name=remot yum
baseurl= http://mirror.centos.org/centos-7/7/extras/x86_64/
enabled=1
gpgcheck=0

源码安装
解包–>运行configure脚本添加编译参数—>编译(gcc glibc)make---->make install
如果系统没有gcc glibc make 那么就需要先安装这个 yum install gcc-* glibc-* make -y
tar xvf Python-3.6.5.tgz 解包
cd Python-3.6.5
./configure --prefix=/usr/local/python3.5 指定安装路径
make
make install
改python3的环境变量

上述方法只是临时修改
永久修改
vim /etc/profile 放在最后一行

yum grouplist 查看可安装的软件组
yum groupinstall '开发工具‘ 安装软件组

ssh服务
service sshd status 查看ssh服务状态 默认是开启的
vim /etc/ssh/sshd_config ssh服务的配置文件

ssh -t root@192.168.1.11 -p 22

apache服务
1.准备环境
关闭防火墙: service iptables stop临时(chkconfig iptables off永久)
关闭selinux: setentforce 0临时(vim /etc/sysconfig/selinux SELINUX=disabled永久))
配置ip
2.安装软件包–3.修改配置文件–4.重启服务–5.测试
yum install httpd -y
vim /etc/httpd/conf/httpd.conf (记住这俩就行Listen, DocumentRoot)
service httpd restart

samba服务
yum install samba -y
vim /etc/samba/smb.conf

service smb restart
得先关闭防火墙才能奏效
然后要建用户
useradd pangzl
smbpasswd -a pangzl
usermod -s /sbin/nologin pangzl 让他不能登系统


推荐阅读
  • AsyncDisplayKit2.0教程(下)
    AsyncDisplayKit2.0Tutorial:AutomaticLayout原文:AsyncDisplayKit2.0Tutorial:Automatic ... [详细]
  • 一、vue介绍Vue.js是一套构建用户界面(UI)的渐进式JavaScript框架,是一个轻量级MVVM(model-view-viewModel&# ... [详细]
  • 根据时间更改网站背景的脚本。热!
    我在网上找到了它,并以自己的方式对其进行了自定义;作者的功劳就在那里。实际上,这是一个用于更改背景颜色的脚本,并且在我看来& ... [详细]
  • 13Linux基本命令和配置服务器来电后自动开机
    本节所讲内容:Linux终端介绍Shell提示符BashShell基本语法基本命令的使用:ls、pwd、cd查看系统和BIOS硬件时间Linux如何获得 ... [详细]
  • linux树莓派和n1,树莓派 斐讯N1 搭建NFS
    什么是NFS?1台Linux主机的磁盘可以通过网络挂载到其他Linux主机上,实现云盘效果。NFS是一套软件和协议,同时也是一种文件系统& ... [详细]
  • shell命令四剑客1.grepUnix中用于文本搜索的工具,它能够接受正则表达式和通配符。也是日常开发调试中用的最多的。用于处理每行的文本grep匹配文本通配符 ... [详细]
  • Unity3D平台宏定义之美
    Unity包含一个“平台相关的编译”功能。这包括一些预处理指令,让你分割你的脚本编译和专为支持的平台之一执行代码段。您可以Unity编辑器中运行代码,这 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • 本文介绍了绕过WAF的XSS检测机制的方法,包括确定payload结构、测试和混淆。同时提出了一种构建XSS payload的方法,该payload与安全机制使用的正则表达式不匹配。通过清理用户输入、转义输出、使用文档对象模型(DOM)接收器和源、实施适当的跨域资源共享(CORS)策略和其他安全策略,可以有效阻止XSS漏洞。但是,WAF或自定义过滤器仍然被广泛使用来增加安全性。本文的方法可以绕过这种安全机制,构建与正则表达式不匹配的XSS payload。 ... [详细]
  • 本文介绍了在Mac上安装Xamarin并使用Windows上的VS开发iOS app的方法,包括所需的安装环境和软件,以及使用Xamarin.iOS进行开发的步骤。通过这种方法,即使没有Mac或者安装苹果系统,程序员们也能轻松开发iOS app。 ... [详细]
  • Redis API
    安装启动最简启动命令行输入验证动态参数启动配置文件启动常用配置通用命令keysbdsize计算key的总数exists判断是否存在delkeyvalue删除指定的keyvalue成 ... [详细]
  • 本文介绍了iOS开发中检测和解决内存泄漏的方法,包括静态分析、使用instruments检查内存泄漏以及代码测试等。同时还介绍了最能挣钱的行业,包括互联网行业、娱乐行业、教育行业、智能行业和老年服务行业,并提供了选行业的技巧。 ... [详细]
author-avatar
仇顺嵐
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有