hi,偶然间看到在linux运行了rm命令之后还能恢复,很是神奇所以就看了下,不知道是不是真的,管他呢先转载啊,不行再删呗反正怎么都是灌水,此文教程并未测试,如有问题请@原作者,在我们在生产环境服务器上执行...rm命令时,总是提心吊胆的,因为一不小心执行了误删,一旦误删没办法了然后就要准备跑路了,毕竟人不是机器,更何况机器也有bug,假如真的不小心删除了不该删除的文件,比如数据库、日志或执行文件,咋办呢?...刨根问底 通过前面的模拟场景演示了恢复文件的整个过程,那么原理是什么,在什么情况下,文件才是可恢复的。...在Linux系统中,每个运行中的程序都有一个宿主进程彼此隔离,以/proc/进程号来体现(Linux本质上就是一个文件系统),比如:ls -l /proc/13067 查看进程PID为13067的进程信息...;当程序运行时,操作系统会专门开辟一块内存区域,提供给当前进程使用,对于依赖的文件,操作系统会发放一个文件描述符,以便读写文件,当我们执行 rm -f 删除文件时,其实只是删除了文件的目录索引节点,对于文件系统不可见
Linux下执行了一些命令之后,可能还想再次执行,有没有什么方法快速执行呢?...找出历史命令并执行 第一种方法比较传统,使用history命令或者fc -l命令列出历史命令: $ fc -l 1997 ablc 1998 exit 1999 find -name..."" 2000 exit 我们注意到,列出的历史命令前有一个数字,其实要想执行某个特定历史命令,只需要!...1999 这样它就会执行 find -name "" 了。 关于!的更多用法可以参考《Linux中!的惊叹用法》 命令搜索 按下: ctrl + r 就可以搜索历史执行的命令啦。
问题 linux系统是centos 7.x 发现将windows自动打的包发到centos后执行.sh文件出现如下: ?...查询.sh文件的格式,通过vim 打开.sh然后执行如下: :set ff 结果: ? 发现是dos格式是有问题,需要转换成unix。...idea解决方案: 1.打开.sh文件,然后点击右下角CRLF修改为UNIX of OS就OK了 ? 2.在配置文件中,统一添加以下配置 unix ?
我们将脚本和安装介质上传到生产环境,然后通过执行脚本来完成安装。如果能够将这两个文件合并为一个可执行文件,那安装的过程就更简单明了。 2、代码保护。...实现方法 1、本文以在Redhat系统中安装ftp命令为例说明,如何将安装脚本和安装介质整合成一个文件,简化操作。 首先,编写一个脚本,包含安装的命令。 #!...一个以.x结尾,为可执行的二进制文件。另一个以.x.c结尾,为生成的中间c文件。shc还能指定可执行脚本的过期时间。...参考资料: 1、Linux .bin安装文件制作 2、dos2unix 3、linux下制作二进制bin 文件制做方法 4、shc 5、How to Encrypt Your Bash Shell...Script on Linux Using SHC
之前写过一篇文章 Linux下c语言中的main函数是如何被调用的,该篇文章侧重于从user space层面讲程序的运行,而文章中提到的有关kernel space层面的相关系统调用,比如fork、execve...将程序的文件路径拷贝到堆栈中。 8. 将环境变量拷贝到堆栈中。 9. 将程序参数拷贝到堆栈中。 10. 调用exec_binprm方法继续执行该程序。...return retval; } EXPORT_SYMBOL(search_binary_handler); 该方法遍历linux中可识别的可执行文件格式,找到对应的文件格式,并调用其load_binary...linux下可执行文件的格式一般为elf,所以我们直接看其load_binary方法: // fs/binfmt_elf.c static int load_elf_binary(struct linux_binprm...好了,到这里,整个程序的内核部分的执行流程就讲完了,结合本文开始提到的那篇文章 Linux下c语言中的main函数是如何被调用的,有关linux下程序的执行就全部讲清楚了。
Vim 是一种流行的、功能丰富的和高度可扩展的 Linux 文本编辑器,它的一个特殊功能便是支持用带密码各种的加密方法来加密文本文件。...本文中,我们将向你介绍一种简单的 Vim 使用技巧:在 Linux 中使用 Vim 对文件进行密码保护。我们将向你展示如何让一个文件在它创建的时侯以及为了修改目的而被打开了之后获得安全防护。...系统 $ sudo yum install vim #RHEL/CentOS 系统 $ sudo dnf install vim #Fedora 22+ 怎样在 Linux...下次你想打开它编辑一下,你就必须像这样去输入密钥: $ vim file.txt 需要 "file.txt" 的加密密钥 警告:正在使用弱加密方法;参见 :help 'cm' 输入密钥:******...文章中我们介绍了怎么通过 Linux 下的 Vim 文本编辑器来给一个文件做加密防护。 永远记住要用强加密方式及密码来适当的保护那些可能包含了诸如用户名及密码、财务账户信息等机密信息的文本文件。
/hello.sh【hello.sh必须有x权限】 二、直接sh 加上文件名.sh,如运行hello.sh为sh hello.sh【hello.sh可以没有x权限】 方法一:绝对路径执行.sh文件...到.sh文件所在目录 比如以hello.sh文件为例,如下 2、给.sh文件添加x执行权限 比如以hello.sh文件为例,chmod u+x hello.sh,如下图 3、..../执行.sh文件 比如以hello.sh文件为例,..../hello.sh 即可执行hello.sh文件,如下图 4、sh 执行.sh文件 以hello.sh文件为例,sh hello.sh即可执行hello.sh文件,如下图 注:用“./”加文件名.sh...执行时,必须给.sh文件加x执行权限
在MySQL下执行: source /home/jiangxingqi/DB/hello world.sql
例如:删除文件夹实例: rm -rf /var/log/httpd/access 将会删除/var/log/httpd/access目录以及其下所有文件、文件夹 (这里可能出现个问题,如果直接如此使用的话...这时需要在 rm -rf 前补充 sudo 作为授权操作的许可,即:sudo rm -rf 文件夹的名字) 例如:删除文件实例: rm -f /var/log/httpd/access.log 将会强制删除.../var/log/httpd/access.log这个文件 需要提醒的是:使用这个rm -rf的时候一定要格外小心,linux没有回收站的。...还有一种方法也挺好用: mkdir a 创建目录a rmdir a 删除目录a 注意:rmdir只能删除空目录,如果目录里面有文件,那么删除失败
导言 前几天下班在地铁上,听到身边有两个小伙子在讨论,如何in-place的修改一个文件,路上想了半天没有好的办法。等到了家里一番探究,终于找到可行的方案了。...什么是in-place的更改文件 所谓edit in place,顾名思义,就是当我们更改一份文件时,不可以创建任何的中间/临时文件,或者临时内存等,来完成对一份文件的修改。...一个类似的例子,用过linux的话,大家应该都有用过vi/vim去修改一份文件,看起来的行为是直接打开一份文件,然后修改,然后wq保存退出。...但是如果有朋友做过监听文件变更的功能的话,会注意到vim在变更文件时,悄悄地去生成了一份隐藏的临时文件,存储了一些中间的变更的数据并在之后再写回到源文件。其实是差不多的道理。...如何做到 那么,我们到底能不能in place的更改一份文件呢?当然是可以的,我们可以使用mmap。
linux下vi命令修改文件及保存的使用方法 进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi n filename :打开文件,并将光标置于第n行首 vi filename...:打开文件,并将光标置于一行首 v … (转)linux下vi命令修改文件及保存的使用方法 进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首.../article/details/35834703 echo “Raspberry” > test.txt linux下sed命令对文件执行文本替换 让我们看一下 sed 最有用的命令之一,替换命令.使用该命令...,可以将特定字符串或匹配的规则表达式用另一个字符串替换.下面是该命令最基本用法的示例: $ sed -e ‘s/foo/bar/’ myfi … linux下查看和修改文件时间 一.查看文件时间及相关命令...语法:touch [选项] 文件 … linux下sed批量替换文件内容 在linux超级终端下编辑文档是件比较麻烦的事情,下面简单介绍一下如何在linux下批量替换文件内容 linuxsed 批量替换多个文件中的字符串
Linux下不支持pcb,需要安装相应的工具包,安装教程如下 我的系统是CentOs7,按照Red Hat版本进行安装 1.进入超级用户模式 sudo su 2.下载配置文件 curl https...unixODBC-devel 6.配置环境变量 echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile 7.为了能够在不登录会话或者是交互模式可以执行...sqlcmd/bcp,需要在~/.bashrc文件中修改路径 echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc source ~/....bashrc 再次执行指令发现可以使用pcb了 [root@localhost ~]# bcp INSPECTOR_LOG.dbo.Table_NewVersionAvgDelay out t001.
拷贝数据 远程拷贝数据的时候,我们一般使用rsync命令,但是如果拷贝大量的小文件,会导致rsync的传输速度慢。...使用tar pv lz4打包压缩传输,可以解决这问题,使用这个方法,等同于使用scp、rsync传输大文件。...实测,使用rsync传输1200G,单个文件大小为几十KB~2GB,千兆网卡,需要同时跑6个rsync才能把带宽跑满,每个速度20MB左右,速度波动大。每分钟可以拷贝4.5GB左右。...,u是更新传输,源文件修改时间较新,则传输。...注意:rsync 传输文件夹时候,folder/ 带/则是传输目录下的文件,不带/是把文件夹也传输过去。 使用压缩传输 安装pv、lz4工具 注意:服务器两端都要安装。
创建sh后缀文件: touch test.sh #!
前言 没设置好日志大小最大值,导致日志文件过大,普通编辑器根本没法打开或者特别卡,怎么办?拆分呗。 如何拆分 split命令上场。...按照行数拆分 假设文件test.txt有n多行,每2行拆分为一个文件,使用-l参数即可: $ split -l 2 test.txt $ ls -al -rw-r--r-- 1 root root 32...能不能好好命名一下呢?...xab xac xad 其他方法 当然了,打的日志文件可以不用那种创建临时文件打开的方式(如vim打开一个文件会创建一个临时文件),而可以使用类似more,tail等命令查看部分内容。...更多查看方式可以参考《Linux常用命令-文本查看篇》。
好了,废话不多说,进入今天的主题-------linux系统如何管理文件系统?...二、inode结构体: 1、在讲这个之前,我想接触过Linux的好友,都会听过这句话:在linux系统下,一切都是文件。...这个确实是,怎么讲,不知道你有没有注意,在windows下,我们可以看到硬盘分区:C盘、D盘、E盘等,但是你在linux下,你是看不到这样的分盘标识符的。...inode (index node) 表中包含文件系统的所有文件列表 3、在linux系统下,操作系统最初拿到的信息是文件名,最终得到的是文件内容。...三、vnode结构体: 1、在讲这之前,我们还是要讲一下什么是文件描述符,前面的文章我只是简单的讲了一下,这里还是补充一下: a、文件描述符(fd)的本质是一个数字,这个数字本质上是进程表中文件描述符表的一个表项
说明: windows下有一共享文件夹APP,windows本地ip是192.168.9.155 现在需要在linux服务器上挂载这个APP文件夹,linux服务器ip是192.168.9.200 操作记录如下...: 1)windows上的准备工作 首先将windows上D盘下的APP文件夹设置为共享。...右击APP文件夹的“共享”属性. ? 选择“特定用户”共享,添加共享用户。如下 ? ? 这样,APP文件夹就设置为共享文件夹了,上面的O3zyrm2d4gnp5j2是windows的机器名。...查看APP下里面的文件 ?...2)linux服务器上的操作 创建挂载目录/mnt/APP [root@dev ~]# mkdir /mnt/APP 使用mount.cifs进行挂载操作:(下面的用户名和密码是登陆windows的)
【问题简述】 在 Linux 下后台执行 Python 脚本,重定向到日志文件,日志文件迟迟没有内容。...&1 | rotatelogs -n 1 /var/log/logfile 1M & 【方案二】(测试无效) 方案二来自 stackoverflow,虽然测试无效,但其他地方也许会用到,记录一下。...stdbuf -oL nohup python3 t.py &> log.log & 【关于重定向】 & 是一个描述符,如果1或2前不加&,会被当成一个普通文件。...&>filename 意思是把标准输出和标准错误输出都重定向到文件filename中 将标准输出连同标准错误重定向到空,常用形式: shell命令 >/dev/null 2>&1 最简形式(cmd 不支持这种格式
标签 Linux、Shell 操作 Linux下编写deploy.sh文件,内容是用docker部署微服务 执行脚本:出错,错误信息如下 错误信息 [root@coder-oldgeek]# sh deploy.sh...问题定位 查看文件内容 查看: sh文件内容 cat deploy.sh 文件内容 #!...:默认换行符是,称为CR与LF两个符号(\r\n); 【注意点】在windows下编辑的shell脚本只看文件内容是没问题,但一旦到linux下可能就运行挂了 解决问题 查找换行符号:find命令 find...-name '*.sh' | xargs -I {} perl -pi -e 's/\r//g' {} 查看有问题文件是否去掉DOS格式下换行符号 [root@coder-oldgeek]# file...deploy.sh: Bourne-Again shell script, ASCII text executable 发现:with CRLF line terminators已经消失了 继续执行脚本
领取专属 10元无门槛券
手把手带您无忧上云