linux常用命令

1、grep "PIN*" -Hn ./ -r

2、find ./ -name "*.py" -exec  grep -Hn "PIN*" {} \;


(1)svn info  svn st svn comit svn update svn check
(2)svn switch --relocate http://192.168.12.35:548/svn/dfd/sdf/ http://192.168.3.65:45/svn/sdfsd/sdfd
(1)telnet 192.168.1.159
(4)ls
(5)ls -1,ls -a
(7) cd ..,cd data
(8) pwd  类似 cd -
(9) ps 显示当前系统中得该用户运行的进程列表
(10) vi options.cfg
     G,I,O,dd,q!,wq
(11) df 用来检查linux文件系统的磁盘空间占用情况
(12) free 查看linux 内存剩余情况
(13)sync 同步
(14)mv 表示将文件或目录改名或将文件由一个目录移入另一个目录中
(15)mv wdt data/ 表示将wdt文件移动到data目录下
(16)find a.txt
(17)mv wdt /mnt/mtdblock
(18)rm 删除一个目录中的一个或多个文件或目录 rm -rf pwp删除 pwp目录
(19)cp wdt data
(20)rm a.txt b.txt c.txt 删除多个文件
(21)gzip 对文件进行压缩(只能压缩单个文件,不能压缩目录)
   gzip[压缩的文件名]
(22)tar 对文件目录进行打包或解包
    tar [参数][打包后文件名][文件目录列表]...
    tar cvzf main.tgz 1.txt 2.txt 3.txt 4.txt 5.txt
(23)gunzip main.gz 解压 .gz文件
    tar xvzf main.gz
    tar xvzf main-tft35.tgz 解压.tgz/.tar.gz后缀文件
    tar jxvf res.bz2解压
(24)ifconfig 查看和配置网络接口的地址和参数
(25)tftp 允许用户利用tftp协议上传和下载文件
    tftp[参数][目标文件][参数][主机名称或ip地址]
  必须打开tftpd32.exe
  tftp -r E.tgz -p 192.168.1.105(下载到哪一台本地主机的地址) 将E.tgz下载到电脑
  tftp -r E.tgz -g 192.168.1.105(上传的文件主机地址) 将E.tgz上传到考勤机
(26)制作固件升级程序时,必须先把main文件压缩成gz格式的压缩包
   再用tar命令打包成tgz格式的压缩包
gzip main.c ->main.gz
tar cvzf main.tgz main.gz ->main.tgz
tar xvzf main.tgz  ->main.gz
gunzip main.gz ->main

(27)关闭看门狗可以防止机器自动重启,在程序出问题时便于操作
(28)vi命令用来编辑
  esc->  i 切换到插入模式,此时光标当于开始输入文件处
  esc->  a 切换到插入模式,并从当前光标所在位置的下个位置开始输入文字
  esc->dd
  esc->yy esc->p  
  esc->:w 将编辑的文件保存到磁盘中
       :q 强制退出vi(对修改过得文件不做保存)
       :wq 保存退出
       :w[file]另存一个名为file的文件
  /searchname ?searchname
tftp -r main_pwp -l main -g 192.168.1.159;
(29)创建文件Helloworld.c  vi Helloworld.c
(30)date显示日期
(31)cal显示万年历
(32)cat 文件名称,直接可以查看文件内容
(33)ftp://192.168.1.250/上传文件
(34)ftp 192.168.116.62
用户名:anonymous
密码:回车
get nginx
(35)chomd +x 文件名 修改权限 chomd 777 nginx 所有用户都可以访问
(36)find / -name httpd.conf 在当前目录及其子目录下查找文件httpd.conf
(37)ps -ef|grep python 查找带有python 的进程
(38)kill -9 进程序号
(39)1、gnome-terminal 开启另一个终端
(40)、设置环境变量
       a、export PATH=$PATH:/opt/..
                查看是否已经设好,可用命令export查看:
                  [root@localhost bin]# export
        b、修改profile文件: 所有用户(不安全)
             修 改/etc/profile(对所有用户都是有效的)
             #vi /etc/profile
             在里面加入:
             export PATH="$PATH:/opt/au1200_rm/build_tools/bin"

         c. 修改.bashrc文件:
            # vi /~/.bashrc
            (单独用户)
            修改~/.bashrc文件。 htt(74)p://www.icwin.net/bbs http://www.wantso.com (每个用户目录下都有,ls -all)
          cd ~
          vi .bashrc
          在里面加入:
           export PATH="$PATH:/opt/au1200_rm/build_tools/bin"

           后两种方法一般需要重新注销系统才能生效,最后可以通过echo命令测试一下:
          # echo $PATH
          看看输出里面是不是已经有了/my_new_path这个路径了。

(41)uname -a 查看linux版本
(41) 设置虚拟机自动获取IP
    vi /etc/sysconfig/network-scripts/ifcfg-eth0
    把BOOTPROTO设置为dhcp
    /etc/init.d/network restart
(42)关闭防火墙
service iptables stop
(43)修改root密码
重启电脑-》按E键-》选择kerel->按e键->输入“空格 single"->enter->回到kerel界面-》按b键->等待加载->password root
(44)创建用户、设置密码、修改用户、删除用户:
useradd testuser   创建用户testuser
passwd testuser   给已创建的用户testuser设置密码
说明:新创建的用户会在/home下创建一个用户目录testuser
usermod --help   修改用户这个命令的相关参数
userdel testuser  删除用户testuser
rm -rf testuser   删除用户testuser所在目录
(45)cp覆盖
新做了服务器,cp覆盖时,无论加什么参数-f之类的还是提示是否覆盖,这在大量cp覆盖操作的时候是不能忍受的。
把a目录下的文件复制到b目录
以下是代码片段:
cp –r a/* b
执行上面的命令时,b存在的每个文件都会提示是否覆盖;
以下是代码片段:
cp –r –f a/* b
执行上面的命令时,b存在的每个文件都不再会提示;
这是我们希望的理想状态,但是有时加了-f了,怎么还会有提示呢?原来一些服务器会默认增加别名 alias cp='cp -i',当你执行cp时,其实执行的是cp –i。
在终端执行alias就可以看出来了。
以下是代码片段:
[root@devdb ~]# alias
alias cp='cp -i'
可以这样解决
以下是代码片段:
[root@devdb ~]# vi ~/.bashrc
在alias cp='cp -i'前加上"#"注释掉这行,:wq!保存推出,然后重新登陆就可以了。
cp -rfu mnt/hgfs/trunk/* /opt/zkeco/

统计所有以json结尾的文件的大小
du -chs *.json
du -h --max-depth=0 dir_name


(46)bash
在Vim中解决这个问题,很简单,在Vim中利用替换功能就可以将“^M”都干掉,键入如下替换命令行:

  1)vi -b setup.sh

  2)在命令编辑行<就是: 按ESC键 然后shift+:冒号>输入:%s/^M//g

  注意:上述命令行中的“^M”符,不是“^”再加上“M”,而是由“Ctrl+v”、“Ctrl+M”键生成的。

  这样替换掉以后,保存就可以执行了。当然还有其他的替换方式比如:

  a.一些linux版本有 dos2unix 程序,可以用来祛除^M。

  b.cat filename1 | tr -d "\r" > newfile 去掉^M生成一个新文件,还有sed命令等,凡是可以替换的命令都是可以用来新生成一个文件的。


(47)service network restart
(48)netstats apn |grep 80 查找80端口是否被占用
(49)vi /etc/exports 设置被别人挂接
  opt/zkeco 10.0.36.*(rw,sync,no_root_squash)
  当将同一目录共享给多个客户机,但对每个客户机提供的权限不同时,可以这样:
  [共享的目录] [主机名1或IP1(参数1,参数2)] [主机名2或IP2(参数3,参数4)]

(50)当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择。

    df可以查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。
    du可以查看文件及文件夹的大小。

    两者配合使用,非常有效。比如用df查看哪个一级目录过大,然后用df查看文件夹或文件的大小,如此便可迅速确定症结。

    下面分别简要介绍

    df命令可以显示目前所有文件系统的可用空间及使用情形,请看下列这个例子:

以下是代码片段:

[yayug@yayu ~]$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1             3.9G  300M  3.4G   8% /
/dev/sda7             100G  188M   95G   1% /data0
/dev/sdb1             133G   80G   47G  64% /data1
/dev/sda6             7.8G  218M  7.2G   3% /var
/dev/sda5             7.8G  166M  7.2G   3% /tmp
/dev/sda3             9.7G  2.5G  6.8G  27% /usr
tmpfs                 2.0G     0  2.0G   0% /dev/shm

    参数 -h 表示使用「Human-readable」的输出,也就是在档案系统大小使用 GB、MB 等易读的格式。

    上面的命令输出的第一个字段(Filesystem)及最后一个字段(Mounted on)分别是档案系统及其挂入点。我们可以看到 /dev/sda1 这个分割区被挂在根目录下。

    接下来的四个字段 Size、Used、Avail、及 Use% 分别是该分割区的容量、已使用的大小、剩下的大小、及使用的百分比。 FreeBSD下,当硬盘容量已满时,您可能会看到已使用的百分比超过 100%,因为 FreeBSD 会留一些空间给 root,让 root 在档案系统满时,还是可以写东西到该档案系统中,以进行管理。

    du:查询文件或文件夹的磁盘使用空间

    如果当前目录下文件和文件夹很多,使用不带参数du的命令,可以循环列出所有文件和文件夹所使用的空间。这对查看究竟是那个地方过大是不利的,所以得指定深入目录的层数,参数:--max-depth=,这是个极为有用的参数!如下,注意使用“*”,可以得到文件的使用空间大小.

    提醒:一向命令比linux复杂的FreeBSD,它的du命令指定深入目录的层数却是比linux简化,为 -d。

以下是代码片段:

[root@bsso yayu]# du -h --max-depth=1 work/testing
27M     work/testing/logs
35M     work/testing

[root@bsso yayu]# du -h --max-depth=1 work/testing/*
8.0K    work/testing/func.php
27M     work/testing/logs
8.1M    work/testing/nohup.out
8.0K    work/testing/testing_c.php
12K     work/testing/testing_func_reg.php
8.0K    work/testing/testing_get.php
8.0K    work/testing/testing_g.php
8.0K    work/testing/var.php

[root@bsso yayu]# du -h --max-depth=1 work/testing/logs/
27M     work/testing/logs/

[root@bsso yayu]# du -h --max-depth=1 work/testing/logs/*
24K     work/testing/logs/errdate.log_show.log
8.0K    work/testing/logs/pertime_show.log
27M     work/testing/logs/show.log

    值得注意的是,看见一个针对du和df命令异同的文章:《du df 差异导致文件系统误报解决》。

    du 统计文件大小相加
    df  统计数据块使用情况

    如果有一个进程在打开一个大文件的时候,这个大文件直接被rm 或者mv掉,则du会更新统计数值,df不会更新统计数值,还是认为空间没有释放。直到这个打开大文件的进程被Kill掉。

    如此一来在定期删除 /var/spool/clientmqueue下面的文件时,如果没有杀掉其进程,那么空间一直没有释放。

    使用下面的命令杀掉进程之后,系统恢复。
    fuser -u /var/spool/clientmqueue

(51)删除自定目录下面的文件
find /opt/release_zkeco/upzkeco/trunk/ -iname "*" -type f|xargs rm -rf
(52)more 或者 cat查看文件内容


基于数据驱动的 Koopman 算子的递归神经网络模型线性化,用于纳米定位系统的预测控制研究(Matlab代码实现)内容概要:本文围绕“基于数据驱动的 Koopman 算子的递归神经网络模型线性化,用于纳米定位系统的预测控制研究”展开,提出了一种结合数据驱动方法与Koopman算子理论的递归神经网络(RNN)模型线性化方法,旨在提升纳米定位系统的预测控制精度与动态响应能力。研究通过构建数据驱动的线性化模型,克服了传统非线性系统建模复杂、计算开销大的问题,并在Matlab平台上实现了完整的算法仿真与验证,展示了该方法在高精度定位控制中的有效性与实用性。; 适合人群:具备一定自动化、控制理论或机器学习背景的科研人员与工程技术人员,尤其是从事精密定位、智能控制、非线性系统建模与预测控制相关领域的研究生与研究人员。; 使用场景及目标:①应用于纳米级精密定位系统(如原子力显微镜、半导体制造设备)中的高性能预测控制;②为复杂非线性系统的数据驱动建模与线性化提供新思路;③结合深度学习与经典控制理论,推动智能控制算法的实际落地。; 阅读建议:建议读者结合Matlab代码实现部分,深入理解Koopman算子与RNN结合的建模范式,重点关注数据预处理、模型训练与控制系统集成等关键环节,并可通过替换实际系统数据进行迁移验证,以掌握该方法的核心思想与工程应用技巧。
基于粒子群算法优化Kmeans聚类的居民用电行为分析研究(Matlb代码实现)内容概要:本文围绕基于粒子群算法(PSO)优化Kmeans聚类的居民用电行为分析展开研究,提出了一种结合智能优化算法与传统聚类方法的技术路径。通过使用粒子群算法优化Kmeans聚类的初始聚类中心,有效克服了传统Kmeans算法易陷入局部最优、对初始值敏感的问题,提升了聚类的稳定性和准确性。研究利用Matlab实现了该算法,并应用于居民用电数据的行为模式识别与分类,有助于精细化电力需求管理、用户画像构建及个性化用电服务设计。文档还提及相关应用场景如负荷预测、电力系统优化等,并提供了配套代码资源。; 适合人群:具备一定Matlab编程基础,从事电力系统、智能优化算法、数据分析等相关领域的研究人员或工程技术人员,尤其适合研究生及科研人员。; 使用场景及目标:①用于居民用电行为的高效聚类分析,挖掘典型用电模式;②提升Kmeans聚类算法的性能,避免局部最优问题;③为电力公司开展需求响应、负荷预测和用户分群管理提供技术支持;④作为智能优化算法与机器学习结合应用的教学与科研案例。; 阅读建议:建议读者结合提供的Matlab代码进行实践操作,深入理解PSO优化Kmeans的核心机制,关注参数设置对聚类效果的影响,并尝试将其应用于其他相似的数据聚类问题中,以加深理解和拓展应用能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值