首页 > 系统相关 >Linux常用操作

Linux常用操作

时间:2023-07-21 13:34:38浏览次数:32  
标签:常用 grep standalone media dev server Linux 操作 root

前言

记录一下工作中用到过的Linux操作。

查看日志

  1. tail

    # 实时监控日志
    tail -f 文件名
    如:tail -f info.log
    
    # 查看日志尾部最后10行日志
    tail -n 10 stdout.log
    
  2. grep

    grep "要搜索的内容" 文件名
    

查看文件

  1. vim

    vim 文件名
    # 进入编辑模式
    1. i在光标处编辑
    2. A在当前行末尾编辑
    
    # 命令模式
    查找: /  
    下一个: n
    上一个: N
    
  2. less

    1. less 文件名
    2. less -Nm 文件名 (可以显示 百分比和行号)
    3. 退出 q
    

翻页

翻整页
# 下一页
control + f  (f就是forword)
或者直接 f/空格
# 上一页
control + b  (b就是backward)
或者直接 b
翻半页
# 向下翻半页
control + d (d = down)
或者直接 d
# 向上翻半页
control + u  (u = up)
或者直接 u
滚一行
# 第一种(正在用)
j/k
# 第二种 (记不住)
control + e
control + y

压缩

zip 压缩/ unzip 解压
# 将 aaa 目录中的内容压缩成aaa.zip,目录可以是相对路径 -r代表递归
zip -r aaa.zip /Users/didi/Downloads/ChromeDownload/aaa/

# 解压
unzip xxx.zip
tar压缩
# 解压
tar -zxvf test.tar.gz
# 压缩
tar -zcvf  test.tar.gz file1 file2
7z压缩

它的压缩比率比较高,如果文件数量较大为了节省空间 可以使用这种压缩方式

安装7z
# mac 安装
brew install p7zip
压缩/解压
# 压缩
7z a -t7z -r test.7z *.mp4 -mx=9
# 参数解释
a:表示add命令,即新建一个压缩文件,该压缩文件存放在当前目录下
-t7z 压缩文件的格式为7z(压缩zip则为-tzip)
-r:表示遍历所有的子目录,每个文件都执行压缩操作,添加到压缩文件中
-mx:表示压缩等级,9级是最高等级。默认等级是5。

# 解压
7z x test.7z

查看服务是否启动

java服务
# jps 命令
[root@localhost ~]# jps
31779 xxxApplication
5427 Elasticsearch
24878 Jps
其他服务
# ps aux | grep 项目关键词
[root@localhost ~]# ps aux | grep media-server-standalone
root     12828  0.0  0.0 669156  3860 ?        Sl   1月31   0:25 ./media-server-standalone
root     25030  0.0  0.0 112724   988 pts/1    R+   15:59   0:00 grep --color=auto media-server-standalone

# 或者 ps -ef | grep media-server-standalone
[root@localhost ~]# ps -ef | grep media-server-standalone
root     12828  3788  0 1月31 ?       00:00:25 ./media-server-standalone
root     25462 24837  0 16:04 pts/1    00:00:00 grep --color=auto media-server-standalone

# 可以加 grep -v grep 排除grep本身
ps aux | grep media-server-standalone | grep -v grep

# 使用 lsof -i:8080 查看该端口有没有启起来
[root@localhost ~]# lsof -i:8080
COMMAND   PID USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME
java    31779 root  208u  IPv4 12627728      0t0  TCP *:webcache (LISTEN)

# netstat -tunlp|grep 8080
[root@localhost ~]# netstat -tunlp|grep 8080
tcp        0      0 0.0.0.0:8080            0.0.0.0:*               LISTEN      31779/java 

kill掉服务

kill -9 pid
或者
killall -9 media-server-standalone

nohup后台启动

启动一个go服务
nohup ./media-server-standalone >/dev/null 2>nohup.out &
启动一个脚本
# 启动看门狗
nohup sh watchdog.sh >> watchdog.log 2>&1 &

# 看门狗
[root@localhost media-server-standalone]# cat watchdog.sh 
while true;
do
    time1=$(date)
    echo $time1
    count=`ps -ef | grep media-server-standalone | grep -v grep`
    if [ "$?" != "0" ];then
        echo  ">>>>no media-server-standalone,run it"
        echo  ">>>>restart media-server-standalone now !"
        nohup ./media-server-standalone >/dev/null 2>nohup.out &
    else
        echo ">>>>media-server-standalone is runing..."
    fi
    sleep 60

启动ES
# 启动 es (需切换到es用户)
./elasticsearch -d
启动kibana
# 启动kibana (需切换到es用户)
nohup ./bin/kibana >> kibana.log 2>&1 &
nohup用法
# 只输出错误信息到日志文件
nohup ./program >/dev/null 2>log &
# 什么信息也不要
nohup ./program >/dev/null 2>&1 &

磁盘使用情况

查看文件大小
# df -h
[root@localhost ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   50G   23G   28G   46% /
devtmpfs                  16G     0   16G    0% /dev
tmpfs                     16G     0   16G    0% /dev/shm
tmpfs                     16G  234M   16G    2% /run
tmpfs                     16G     0   16G    0% /sys/fs/cgroup
/dev/md126p2            1014M  164M  851M   17% /boot
/dev/md126p1             200M  9.8M  191M    5% /boot/efi
/dev/mapper/centos-home  3.4T  233G  3.2T    7% /home
tmpfs                    3.2G     0  3.2G    0% /run/user/0


# du -h --max-depth=1
[root@localhost ~]# du -h --max-depth=1
12M	./.cache
4.0K	./.dbus
0	./.config
4.3G	./work
196K	./firmware
112K	./data1
4.3G	.

# du -sh *
[root@localhost output]# du -sh *
16K	bin
20K	conf
0	Dockerfile
4.0K	emptystdlog.sh
28M	gc.log.2021-01-13_18_17_58
61M	gc.log.2021-02-18_14_43_46
75M	lib
4.0G	stdout.log
在Linux上用U盘或移动硬盘拷贝数据
  1. 通过 fdisk -l 找到自己的U盘

    [root@localhost ~]# fdisk -l
    WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion.
    
    磁盘 /dev/sda:4000.8 GB, 4000787030016 字节,7814037168 个扇区
    Units = 扇区 of 1 * 512 = 512 bytes
    扇区大小(逻辑/物理):512 字节 / 512 字节
    I/O 大小(最小/最佳):512 字节 / 512 字节
    磁盘标签类型:gpt
    Disk identifier: C45A17BF-A83E-422B-A363-A1A50D6D29F8
    
    
    #         Start          End    Size  Type            Name
     1         2048       411647    200M  EFI System      EFI System Partition
     2       411648      2508799      1G  Microsoft basic 
     3      2508800   7423322111    3.5T  Linux LVM       
    WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion.
    
    磁盘 /dev/sdb:4000.8 GB, 4000787030016 字节,7814037168 个扇区
    Units = 扇区 of 1 * 512 = 512 bytes
    扇区大小(逻辑/物理):512 字节 / 512 字节
    I/O 大小(最小/最佳):512 字节 / 512 字节
    磁盘标签类型:gpt
    Disk identifier: C45A17BF-A83E-422B-A363-A1A50D6D29F8
    

    比如找到自己的U盘:/dev/sdc1

  2. 加载USB模块

    modprobe usb-storage
    
  3. 在 目录 /mnt 下创建 文件夹 usb_disk

    mkdir /mnt/usb_disk
    
  4. 挂载U盘

    # 方式1
    mount /dev/sdc1 /mnt/usb_disk/
    # 方式2
    mount -t ntfs /dev/sdc1 /mnt/usb_disk/
    

    如果有问题,需要下载 ntfs-3g,然后执行 mount -t ntfs-3g /dev/sdc1 /mnt/usb_disk/

    # 下载
    wget https://tuxera.com/opensource/ntfs-3g_ntfsprogs-2017.3.23.tgz
    # 解压
    tar xf ntfs-3g_ntfsprogs-2017.3.23.tgz
    # 目录位置
    /usr/local/ntfs-3g_ntfsprogs-2017.3.23
    # 编译安装
    cd ntfs-3g_ntfsprogs-2017.3.23
    ./configure && echo $?
    make && echo $?
    make install && echo $?
    
  5. 卸载U盘

    umount /mnt/usb_disk/
    

scp上传下载

# 本地上传文件到服务器
scp test.7z [email protected]:/root/work

# 服务的文件 传到本地
scp [email protected]:/root/work/test.7z ./

防火墙

# 查看 开通的端口
firewall-cmd --zone=public --list-ports
# 开通某个端口(移除某个端口)
firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --zone=public --remove-port=8080/tcp --permanent
# 重启防火墙
firewall-cmd --reload

修改某个文件的用户和用户组

# 对elk-es-cluster_server.json文件 设置用户和用户组分别为es和es
chown es:es elk-es-cluster_server.json
# 如果 需要递归设置 加 -R 参数

查找指令

whereis java
find / -name java

标签:常用,grep,standalone,media,dev,server,Linux,操作,root
From: https://www.cnblogs.com/charlton/p/17571044.html

相关文章

  • Redis安装整理(window平台和Linux平台)
    window平台Redis安装 rediswindows安装文件下载地址:http://code.google.com/p/servicestack/wiki/RedisWindowsDownload#Download_32bit_Cygwin_builds_for_Windows我选择的redis为最新版的安装文件,见下图:  Redis安装文件解压后,有以下几个文件。见下图  re......
  • Linux应用程序安装
    一、linux安装包分类1.Linux源码包源码包就是一大堆源代码程序,是由程序员按照特定的格式和语法编写出来的2.LinuxRPM二进制包二进制包,也就是源码包经过成功编译之后产生的包。由于二进制包在发布之前就已经完成了编译的工作,因此用户安装软件的速度较快(同Windows下安装软件速......
  • Excel 端口操作指南
    通过将EDI报文可视化为Excel,企业可以更好地了解和处理数据,提高工作效率,减少错误率。在未实现EDI系统和内部业务系统集成之前,Excel方案则是一项可供选择的临时替代方案。Excel方案的优点在于,无需对业务系统再做开发工作,数据可读性较强。用户只需将交易伙伴需要的业务数据填......
  • Linux shell | 竖线管道符号放变量 无法访问'|': 没有那个文件或目录 无法访问'wc':
    工作中遇到一个实际问题,文本编码转换。原始命令:catutf8.log|iconv-c-fUTF-8-tGBK|teegbk.log因为某种(方便修改、方便替换)原因,想把“|iconv-c-fUTF-8-tGBK|”命令这段,想放到变量里,做到一处修改处处生效的效果。pipe="|iconv-c-fUTF-8-tGBK|"catutf......
  • C# 使用EPPlus 操作excel The given key '8' was not present in the dictionary.
    使用EPPlus删除excel中某一个sheet中的几列的时候,出现了Thegivenkey'8'wasnotpresentinthedictionary.的报错;最开始的写法,是从前往后删除,出现错误//ExcelWorksheetsheet=package.Workbook.Worksheets[i];//sheet.DeleteCol......
  • Linux删除log日志文件命令
    如下:1、删除文件夹及子目录下的日志文件find.-name'*.log*'|xargsrm2、忽略当前文件夹下的文件夹,可在-v后面添加  “/文件夹名称”,这里用log文件夹举例find.-name'*.log*'|grep-v/log|xargsrm这样就可以删除总文件夹下除了log文件夹以外的.log文件了......
  • Linux 静态库的创建和使用
    参考文章:《【Linux】静态库和动态库的创建与使用--示例讲解》 一、库的种类Linux下的库有两种:静态库和动态库(共享库);静态库:程序在编译链接的时候把库的代码链接到可执行文件中,.a为后缀动态库:程序在运行的时候才去链接动态库(共享库)的代码,可以多个程序共享使用库的代码,通......
  • Python文件操作
    Python文件操作一、文件的编码1.1背景thinking:计算机只能识别:0和1,那么我们丰富的文本文件是如何被计算机识别,并存储在硬盘中呢?answer:使用编码技术(密码本)将内容翻译成0和1存入。编码技术即:翻译的规则,记录了如何将内容翻译成二进制,以及如何将二进制翻译回可识别内容。计算机......
  • linux swap配置
    背景:主要是服务器内存不够时,可以通过交换分区,减轻内存压力。 基础命令:mkdir:用于创建目录。touch:若文件不存在,系统会建立一个新的文件。dd:可从标准输入或文件中读取数据,根据指定的格式来转换数据,再输出到文件、设备或标准输出。mkswap:命令用于设置交换区(swaparea)。swap......
  • JavaIO中的缓冲流有什么作用如何使用缓冲流进行IO操作
     缓冲流在JavaIO中扮演着非常重要的角色,它可以提高IO操作的效率,减少访问硬盘的次数。在本文中,我们将探讨JavaIO中的缓冲流的作用,并演示如何使用缓冲流进行IO操作。首先,让我们了解一下什么是缓冲流。缓冲流是一种高级流,它通过在内存中创建缓冲区来提高IO的效率。当我们使用缓冲......