當前位置:首頁 » 操作系統 » grlinux

grlinux

發布時間: 2022-05-14 16:12:13

linux 怎麼進入單用戶模式

1、在grup主界面按a(在系統啟動前修改內核參數),在命令行最後添加S或者single,按回車即可進入。

2、在grub主界面按e(修改系統啟動時使用的grub命令),選擇啟動使用的內核,在命令最後添加S或者single,按回車返回,按b進入系統。註:修改是單次生效,不會影響系統啟動配置。

3、在grub主界面按c,進入grub 命令行交互模式。
在許多單用戶環境下,文件系統的根目錄是按只讀方式安裝的。如果/tmp是根文件系統的一部分,那麼許多要使用臨時文件的命令(例如:vi)都不能執行。為了解決這個問題,必須先把根文件系統(/)以讀寫方式進行安裝,再開始單用戶模式的交互操作。下面這條命令通常就能實現這個技巧。
#mount -o rw,remount /

❷ linux shell腳本

gp命令?在linux和mac上試了下,發現沒這個命令。。。我就理解為grep命令吧。

沒錯,「|」是或,但是你這里的理解不太對,「|」前後是兩個獨立的pattern,所以你第2條命令應該是匹配「gr(a」或「e)y」,並且此處的「|」應該要寫成「|」。

另外,不同的正則表達規則可能不一樣,比如grep -E "gr(a|e)y"是可以輸出正確結果的。

所以,兩個解決方案:

  1. 把你第2條命令改成

    1. ls|grep"gray|grey"
  2. 把你第2條命令改成

    1. ls|grep-E"gr(a|e)y"

❸ linux的安裝問題

1 Red Hat Enterprise Linux 5的安裝
安裝Red Hat Linux的硬體要求如下,一般現在的電腦配置都可以滿足這些要求了哈: CPU:Pentium以上處理器。文本模式推薦配置:200MHz奔騰或更高,圖形模式推薦配置:400MHz奔騰內存:文本模式最小內存值128MB,圖形模式最小內存值:192MB,推薦使用256MB以上的內存。硬碟:RHEL5安裝需要3GB以上的硬碟空間,完全安裝全部軟體包需大約5GB的硬碟空間。顯卡:VGA兼容顯卡。光碟機:CD-ROM/DVD-ROM。其他設備:如音效卡、網卡和Modem等。軟碟機:可選
Red Hat網站提供了經過兼容性測試和認證的「硬體兼容性列表」,在得到系統硬體設備的具體型號後,最好訪問http://bugzilla.redhat.com/hwcert/來查看用戶的配置是否在清單之中Linux 支持在一台計算機中安裝多個操作系統,它通過使用GRUB多重啟動管理器來支持多操作系統並存,GRFreeBSD、OpenBSD、DOS 和Windows等操作系統。計算機啟動時,用戶可以使用GRUB提供的菜單選擇需系統,所以不必擔心出現安裝了Linux後,導致其他操作系統不能使用的問題。
Redhat支持不同的安裝方式(如光碟安裝、硬碟安裝及網路安裝),我們首先以最基本、最常用的光碟安裝開Linux介紹及Redhat5.1基礎可以參考【51CTO_RHCE講座】RHCE課程筆記專題。
不可與root分區分開的目錄:/dev,/etc,/sbin,/bin,/lib,系統啟動時,核心只載入一個分區,那就是/,載入/dev,/etc,/sbin,/bin,/lib五個目錄的程序,所以以上幾個目錄必須和/根目錄在一起。最好單獨分區的目錄:/home,/usr,/var,/tmp,出於安全和管理的目的,以上四個目錄最好要獨立出來,samba服務中,/home目錄我們可以配置磁碟配額quota。
我們以40G硬碟為例: /boot 100MB / 10GB
swap 512MB /home 10GB /usr 8GB /var 5GB /tmp 3G
1.1 Red Hat Enterprise Linux 5光碟安裝
這樣我們就到了RHEL5安裝界面,點回車是以圖形截面安裝,輸入linux text是用CLI安裝.
這里我們選語言為簡體中文。
按OK
這里選美式鍵盤US
這里可以輸入RHEL5.1的序列號,也可以跳過不填,對安裝應用沒關系。RHEL 5安裝序列號哈Server: * Red Hat Enterprise Linux (Server including virtualization): 2515dd4e215225dd * Red Hat Enterprise Linux Virtualization Platform: 49af89414d147589 Client: * Red Hat Enterprise Linux Desktop: 660266e267419c67 * Red Hat Enterprise Linux Desktop + Workstation Option: da3122afdb7edd23 *Red Hat Enterprise Linux Desktop + Workstation + DualOS Option (Virtualization): 7fcc43557e9bbc42 *Red Hat Enterprise Linux Desktop + DualOS Option (Virtualization): fed67649ff918c77
提示要初始化硬碟,選YES繼續。
這里分區我們選擇自定義
我們進行硬碟分區: New 就是建立新的分區EDIT 就是更改已有的分區DELETE 就是刪除已建立的分區RESET 就是把你剛才的設定全部取消。恢復到現在的樣子RAID 是磁碟陣列
LVM 是邏輯卷
/boot 100MB,記住,boot需要放在磁碟的第一個分區上,怎麼看是不是在第一個分區上?看開始的塊是不是1
/ 根目錄 10G
swap 512MB 一到兩倍內存容量
/home 10G 存放普通用戶信息
/usr 8G linux系統所在位置
/var 5G 默認伺服器的登錄文件(郵件與WWW默認路徑)
/tmp 3G
最後分區結果如下,按OK繼續:
選擇Use GRUB Boot Loader
這步選擇默認
這里設置GRUB密碼,可以設置也可以不設置,如果設置了請記住自己的密碼哈。
這里點OK就可以了
這里我們安裝在MBR
這里選擇YES配置網卡
選擇啟用IPv4支持,IPv6可以不選,一般都沒用
這里選擇手動配置網卡192.168.0.0/24
這里輸入你的網關及DNS伺服器地址
輸入主機名,我輸入的是RHEL5
時區選擇Asia/Shanghai
配置ROOT密碼,輸入兩次,記住自己輸入的口令哦
我們去掉Virtualization組件並選擇自定義安裝軟體包。
自定義安裝軟體包時,我們添加Development Libraries和Development Tools組件,保證系統軟體開發的程工具完整性,然後OK下一步,伺服器軟體我們以後自己裝。
LINUX要安裝軟體都是需要檢測依耐關系的
開始安裝,安裝日誌在/root/install.log
Linux安裝已經完成,重啟一下計算機
選擇退出
到了Linux登錄界面
以root帳戶登錄
在CLI界面下我們要啟動圖形界面可以輸入startx,我們如果要修改成一直圖形界面啟動Linux,可以輸入vi /etc/inittab,鍵入i編輯把id:3改成id:5,保存退出。
1.2 Red Hat Enterprise Linux 5硬碟安裝
如果我們沒有RHEL5.1的安裝光碟,只有它的ISO鏡像文件,那我們可以進行RHEL5.1硬碟安裝。我們可以RHEL5.1的ISO鏡像文件放在主機的一個可用分區上(比如FAT/FAT32文件系統),NTFS是不行的哈,如果fat32格式,只有NTFS格式,那我就沒有辦法了,因為好象NTFS格式轉化為fat32風險比較大,最好的辦法空餘空間分出3GB主分區,作為fat32文件系統。把RHEL5.1鏡像文件到那個分區也可以。
注意: 劃分出來的3G分區最好是分為主分區,也可以是fat32格式的C盤,或者是D盤(也就是/dev/hda5),因分成其他邏輯分區後RHEL5硬碟安裝時報錯。總是提示Error informing the kernel about modifications to partition /dev/sda5 - 設備或資源忙。結果格了N次,系統重做N次,汗~~~
需要提取RHEL5鏡像下isolinux目錄裡面的兩個文件。vmlinuz 和initrd.img. isolinux目錄下包含了從 CD 啟動所需要的文件: vmlinux是一個可執行文件,包含靜態與Linux內核的可執行文件格式; initrd.img映像中包含了支持Linux系統核心兩個階段引導過程所需要的必要可執行程序和系統文件initrd; 我們把vmlinuz、initrd.img及rhel5鏡像文件放到我們劃分出來的那個3GB的分區上。
先到網上http://download.gna.org/grub4dos/下載一個grub-for-dos的工具(附件里的就是),我這里下grub4dos-0.4.4-2008-11-19.zip。
可從以下網址下載GRUB4DOS最新版及較早版本。http://download.gna.org/grub4dos/ http://download.gna.org/grubutil/ http://grub4dos.jot.com/WikiHome https://gna.org/projects/grub4dos/ http://grub4dos.sourceforge.net/wiki (官方說明文檔)
下載grub4dos後,解壓縮後就可以了。核心文件有下面這幾個:grldr和grub.exe,及menu.lst(此為樣本改)。如果你需要中文支持,就用chinese子目錄中的文件。
通過Windows NT/2000/XP/2003的啟動管理器啟動GRUB4DOS 在 Windows NT/2000/XP/2003中,可以把grldr和menu.lst拷貝到C:\。
然後在boot.ini的最後加上一行:c:\grldr="Start GRUB4DOS"
如果boot.ini中的timeout值為零,把它設置為大於0的數字,例如timeout=30,然後保存boot.ini。
注意:boot.ini文件一般是隱藏的,你需要在文件夾選項中設置顯示所有文件,或者在cmd中使用以下命令來boot.ini的隱藏屬性。
編輯boot.ini前,可在cmd下輸入: attrib -s -r -h c:\boot.ini 解除boot.ini的只讀屬性,編輯完後輸入: attrib +s +r +h c:\boot.ini 恢復boot.ini的原有屬性。
下一次啟動Windows時,你會發現啟動畫面中多了Start GRUB4DOS這一選項,使用它便可啟動GRUB4D
該方案的優點:不需要修改MBR和啟動扇區
參考,感興趣的可以自己研究下: 對於多數沒有或很少接觸過linux的windows用戶來說,剛開始使用grub時離不開菜單。也就是說,使用g們要准備menu.lst文件。下面是一個menu.lst的例子。(以#開始的行,表示注釋,不執行) # 默認延遲時間(秒) timeout 30 # 第一項為默認值default 0 # 設置圖形背景文件splashimage (hd0,0)/boot/grub/xp2008.gz # 設置中文支持的字體文件fontfile (hd0,0)/boot/grub/fonts title 使用map啟動本地硬碟上的瑞星殺毒軟盤鏡像文件map (hd0,0)/boot/grub/rav.img (fd0) map --hook chainloader (fd0)+1 rootnoverify (fd0) title 使用memdisk啟動本地 Win98 軟盤鏡像文件kernel (hd0,0)/boot/grub/memdisk.gz initrd (hd0,0)/boot/grub/win98.img title 使用memdisk啟動本地硬碟上的瑞星殺毒軟盤壓縮鏡像文件root (hd0,0) kernel /boot/grub/memdisk.gz c=80 h=12 s=36 floppy initrd /boot/rav.zip title 啟動第一主分區(hd0,0)上的操作系統rootnoverify (hd0,0) makeactive chainloader +1 title 啟動第二主分區(hd0,1)上的操作系統
rootnoverify (hd0,1) makeactive chainloader +1 title 重啟reboot title 關機halt 參考這個例子,我們就可以根據自己需要對菜單進行修改。比如從網上下載了效率源的鏡像文件,文件名為XLY.IMG。我們只需把title 使用memdisk啟動本地 Win98 軟盤鏡像文件kernel (hd0,0)/boot/grub/memdisk.gz initrd (hd0,0)/boot/grub/win98.img 改成title 硬碟檢測修復工具效率源 (memdisk) kernel (hd0,0)/boot/grub/memdisk.gz initrd (hd0,0)/boot/grub/xly.img 或者改成title 硬碟檢測修復工具效率源 (map) map (hd0,0)/boot/grub/xly.img (fd0) map --hook chainloader (fd0)+1 rootnoverify (fd0) 同時把xly.img文件保存到第一主分區(一般是C:)的boot\grub目錄下。當然也可以保存到其它路徑。比如xly.img文件保存到C:\boot下,則menu.lst文件相應改為: map (hd0,0)/boot/xly.img (fd0) 又如xly.img文件保存到D:\test下,則menu.lst文件相應改為: map (hd0,4)/test/xly.img (fd0) (參看下面的注意d) 從上面的例子可以看出,啟動軟盤鏡象,有兩種方式,即用memdisk或用map。用memdisk時,img文件可壓縮;在img文件大小為非1.44MB或2.88MB標准鏡像時,需要指定CHS參件的CHS參數可用winimage獲得。即例子中的: title 使用memdisk啟動本地硬碟上的瑞星殺毒軟盤壓縮鏡像文件root (hd0,0) kernel /boot/grub/memdisk.gz c=80 h=12 s=36 floppy initrd /boot/rav.zip 另外,菜單文件中的文件路徑可用相對路徑(如:/boot/rav.zip)或絕對路徑(如:(hd0,0)/boot/grub/xly示。map方式對軟盤映像大小沒有限制,但要求必須連續存放。改進的map --mem則無此限制。比如: map --mem /boot/xxx.ima (fd0) map --hook chainloader (fd0)+1 rootnoverify (fd0) 注意: a, 菜單文件中所用的memdisk.gz文件,不包括在grub4dos的發行包里,需自行准備。可從gnu grub軟體它基於grub的工具(如一鍵ghost,本人的gghost)中獲得。b, 菜單中所用的其它文件如xp2008.gz(背景文件)、fonts(中文字體文件)及各種鏡像文件等,均需拷貝定路徑。 fontfile命令不可單獨使用,需與splashimage一起使用。c, 菜單文件中的命令全部使用小寫。

❹ Linux操作系統文件訪問許可權詳解

一直以root登陸使用linux的人來說很少有許可權被拒這種概念,但某些時候又深受許可權拒絕困擾。
知道為什麼很多程序中需要使用getuid(),setuid()?為什麼以普通許可權登陸的用戶不能進入/root,為什麼在/目錄下執行ls -l後可以顯示root的信息,但ls /root -al卻是許可權不夠?為什麼有些文件夾可以繼續創建文件,但就是不能ls?等等,相信看了此文就能明白。
主要是學習筆記,不足之處請指正。
CentOS 5.4 [testc@xxx opt]$ uname -a Linux xxx 2.6.18-164.el5xen #1 SMP Thu Sep 3 04:47:32 EDT 2009 i686 i686 i386 GNU/Linux
一、口令文件1,格式存儲文件/etc/passwd,格式如下:root:x:0:0:root:/root:/bin/bash aaa:x:501:501:bj, bj, 8111111,136000111:/home/aaa:/bin/bash用戶名:加密密碼:用戶ID:組ID:注釋:工作目錄:shell:
默認情況是第一行的格式;注釋欄位可以自行修改,用逗號隔開,如第二行格式,這主要是給finger命令使用時可解析。
可以vi /etc/passwd修改,但為了保證其格式的正確性,請用vipw命令編譯此文件。
sh-3.2# finger aaa Login: aaa Name: bj Directory: /home/aaa Shell: /bin/bash Office: bj, 8111111 Home Phone: 136000111 Never logged in. No mail. No Plan.
2,編程實例
/*getpwnam_pwuid.c*/ #include #include #include
int main(void)
{ //struct passwd *pwd = getpwnam("aaa");struct passwd *pwd = getpwuid(501);if(pwd == NULL)
{ printf("err.\n");return 1;}
printf("name:%s\n", pwd->pw_name);printf("passwd:%s\n", pwd->pw_passwd);printf("description:%s\n", pwd->pw_gecos);printf("uid:%d\n", pwd->pw_uid);printf("gid:%d\n", pwd->pw_gid);printf("dir:%s\n", pwd->pw_dir);printf("shell:%s\n", pwd->pw_shell);
return 0;}
sh-3.2# gcc getpwnam_pwuid.c -o app sh-3.2# ./app name:aaa passwd:x description:bj, bj, 8111111,136000111 uid:501 gid:501 dir:/home/aaa shell:/bin/bash
二、組文件1,格式存儲文件/etc/group,格式如下root:x:0:root bin:x:1:root,bin,daemon aaa:x:501:組名:加密密碼:組ID:指向的各用戶名
2,改變文件uid和gid.
sh-3.2# pwd /root/study sh-3.2# ls -al -rw-r——r—— 1 root root 397 10-11 03:23 test.c
chgrp 改變所屬組ID,當然只有root許可權才可以修改。
sh-3.2# chgrp aaa test.c sh-3.2# ls -al -rw-r——r—— 1 root aaa 397 10-11 03:23 test.c
這個aaa就是新組名,其在/etc/group中,可以通過adser aaa自行添加sh-3.2# cat /etc/group root:x:0:root bin:x:1:root,bin,daemon daemon:x:2:root,bin,daemon.
gdm:x:42:sabayon:x:86:plmtest:x:500:aaa:x:501:
chown 改變用戶ID或組ID sh-3.2# chown aaa:aaa test.c sh-3.2# ls -al -rw-r——r—— 1 aaa aaa 397 10-11 03:23 test.c
3,編程實例
/*getgrnam.c*/ #include #include
int main(int argc, char *argv[])
{ if(argv[1] == NULL)
{ printf("input error.\n");return 1;}
struct group *gp = getgrnam(argv[1]);if(gp == NULL)
{ printf("err.\n");return 1;}
printf("name:%s\n", gp->gr_name);printf("psswd:%s\n", gp->gr_passwd);printf("gid:%d\n", gp->gr_gid);
int i;for(i = 0; gp->gr_mem[i] != NULL; i++)
{ printf("group name:%s\n", gp->gr_mem[i]);}
return 0;}
sh-3.2# gcc getgrnam.c -o app sh-3.2# ./app bin name:bin psswd:x gid:1 group name:root group name:bin group name:daemon 4,文件許可權不細講了sh-3.2# ls -al總計 483984 drwxr-x—— 13 root root 4096 02-22 00:01 . drwxr-xr-x 32 root root 4096 02-21 21:15 ……
-rw-r——r—— 1 root root 464023491 10-25 22:33 3.3.005-080425.tgz -rw—— 1 root root 9346 02-21 23:16 .bash_history -rw-r——r—— 1 root root 24 2007-01-06 .bash_logout -rw-r——r—— 1 root root 191 2007-01-06 .bash_profile -rw-r——r—— 1 root root 176 2007-01-06 .bashrc drwxrwxrwx 10 1000 users 4096 08-23 20:16 cflow-1.3 -rw-r——r—— 1 root root 759691 08-23 20:13 cflow.tar.gz -rw-r——r—— 1 root root 100 2007-01-06 .cshrc -rwxr-xr-x 1 root root 582 11-11 21:48 delete_M.sh -rw-r——r—— 1 root root 2518 11-11 20:25 .dir_colors
主要是最左邊一列:drwxr-x——10個字元,最左邊是文件類型,-默認為普通文件;d:目錄文件;l符號鏈接……
後面9個,3個一組共三組,分別表示所屬用戶uid的許可權;所屬組或者附屬組gid的許可權;其它許可權。
三個字元分別是讀、寫、執行許可權讀4,寫2, 執行1
所以chmod 777 test.c,提升到讀、寫、執行許可權。
5,組許可權操作實例此節演示相同組的成員之間共享資源,即不同uid但相同gid的用戶共享同一組的資源。
為了方便起見,我同時開了兩個終端。
"sh-3.2#"以root許可權登陸的shell /bin/sh "[testa@xxx root]"以testa用戶登陸的shell
註:下文提到的「用戶」是指/etc/passwd里定義的通過終端登陸的用戶(此文即以下增加的三個賬號名)。
sh-3.2# useradd testa sh-3.2# useradd testb sh-3.2# useradd testc
sh-3.2# tail -f /etc/passwd -n 4 sabayon:x:86:86:Sabayon user:/home/sabayon:/sbin/nologin testa:x:500:500::/home/testa:/bin/bash testb:x:501:501::/home/testb:/bin/bash testc:x:502:502::/home/testc:/bin/bash
再開一個終端登陸testa,之前那個終端保持。
sh-3.2# su testa [testa@xxx root]$ id uid=500(testa) gid=500(testa) groups=500(testa)
[testa@xxx home]$ ls -al總計 28 drwxr-xr-x 5 root root 4096 02-21 22:52 . drwxr-xr-x 32 root root 4096 02-21 21:15 ……
drwx—— 3 testa testa 4096 02-21 22:56 testa drwx—— 3 testb testb 4096 02-21 22:48 testb drwx—— 3 testc testc 4096 02-21 22:52 testc
[testa@xxx home]$ cd testb bash: cd: testb: 許可權不夠
通過root修改testb目錄許可權為770,即當前uid或者gid相同的用戶均有讀寫執行許可權。
sh-3.2# cd /home/ sh-3.2# chmod 770 testb
[testa@xxx home]$ ls -al總計 28 drwxr-xr-x 5 root root 4096 02-21 22:52 . drwxr-xr-x 32 root root 4096 02-21 21:15 ……
drwx—— 3 testa testa 4096 02-21 22:56 testa drwxrwx—— 3 testb testb 4096 02-21 22:48 testb (here modify)
drwx—— 3 testc testc 4096 02-21 22:52 testc
[testa@xxx home]$ cd testb bash: cd: testb: 許可權不夠[testa@xxx root]$ id uid=500(testa) gid=500(testa) groups=500(testa)
此時雖然開放了testb的所屬組許可權,但用戶testa的gid=500(testa) groups=500(testa),它還不屬於testb組。
下面修改testa的gid為testb(或者增加其附屬組groups值為testb)
sh-3.2# usermod -G testb testa (增加用戶testa的附屬組testb)
sh-3.2# id testa uid=500(testa) gid=500(testa) groups=500(testa),501(testb)
此時testa終端需要重新登下,使剛才更改生效[testa@xxx root]$ exit exit [root@xxx ~]# su testa [testa@xxx root]$ id uid=500(testa) gid=500(testa) groups=500(testa),501(testb)
[testa@xxx root]$ cd /home/ [testa@xxx home]$ ls -al總計 28 drwxr-xr-x 5 root root 4096 02-21 22:52 . drwxr-xr-x 32 root root 4096 02-21 21:15 ……
drwx—— 3 testa testa 4096 02-21 22:56 testa drwxrwx—— 3 testb testb 4096 02-21 22:48 testb drwx—— 3 testc testc 4096 02-21 22:52 testc [testa@xxx home]$ cd testb [testa@xxx testb]$ pwd /home/testb
以上是增加了用戶testa的附屬組testb,使其對於屬於testb組的資源有了訪問許可權。
下面再使用newgrp切換用戶testa的gid.
[testa@xxx testb]$ id uid=500(testa) gid=500(testa) groups=500(testa),501(testb)
[testa@xxx testb]$ newgrp testb [testa@xxx testb]$ id uid=500(testa) gid=501(testb) groups=500(testa),501(testb)
此時testa用戶的gid已改為501(testb)。
組之前的關系在文件/etc/group sh-3.2# tail -f /etc/group -n 4 sabayon:x:86:testa:x:500:testb:x:501:testa (最後一列:組內用戶列表。即組testb里包含testa,testa屬於testb組,大概就這意思吧……)
testc:x:502:
雖然知道控制組關系的文件,但不能直接修改些文件,否則執行newgrp時會出現"抱歉"錯誤提示。
當然root用戶許可權是無限制的,它訪問文件時不需要進行許可權檢查。
三、相關系統調用getuid();getgid();int setuid(uid_t uid);int setgid(gid_t gid);
只有超級用戶或者需要設置的uid和當前用戶的uid一致才可以設置,否則返回-1,置errno = EPERM, errno可以通過strerror()翻譯。
其它:[testa@xxx home]$ su testa [testa@xxx home]$ sudo touch aa
testa is not in the sudoers file. This incident will be reported.
以root許可權vim /etc/sudoers增加testa ALL=(ALL) ALL
參考:APUE2E,1.8, 4.4, 8.11

❺ 本人電腦是雙系統win10和ubuntu,把Linux分區直接刪除了,結果直接重啟了後就一直是gr

方法1.EasyBCD 軟體,此軟體是作為系統引導所用

下載地址:http://dl.pconline.com.cn/download/90611.html
當你不要 ubuntu 的時候,直接在 window 里磁碟管理刪了它所在的分區,然後在 Easybcd 里 刪了它的引導就行,不影響你的 windows 系統
方法2.請製作一個U盤的PE系統(win8PE)

BIOS設置啟動順序為U盤,
啟動後,試下用分區工具,恢復一下MBR
重寫MBR使默認啟動WIN的菜單

❻ 電腦有雙系統,linux和win8,引導是在linux盤,結果把linux盤誤刪除了,開機進入gr

呵呵,據我所知,由於你的win是建立在linux上的,所以……只能全部重做了

❼ linux查找內容命令

find,用於在文件樹中查找文件並作相應的處理

-name:按照文件名查找文件

-perm:按照文件許可權查找文件

-user:按照文件屬主來查找文件

-size:按照指定的文件大小查找文件【+n:大於,-n:小於,n:等於】

-group:按照文件所屬的組來查找文件

-mtime<-n><+n>:按照文件更改時間來查找文件,-n表示n天之內,+n表示n天以前

-newer file1 file2:查找更改時間在file1和file2之間的文件

例如:

  • find -mtime -2:查找48小時修改過的文件

  • find -name ".log":查找當前目錄以".log"結尾的文件

  • find /opt/soft/test -perm 777:查找指定目錄下許可權為777的文件

  • find -type f -name "*.log":查找當前目錄下以".log"結尾的普通文件

  • find -type d | sort:查找當前所有目標目錄並排序

  • find /home/wansw -size +20M:查找大於20M的文件

  • locate指令,可以快速定位文件路徑,利用事先建立的系統中的所有文件名稱和路徑的locate資料庫,無需遍歷整個文件系統,查詢速度較快,為了保證查詢准確性,需要定期更新。《Linux就該這么學》

  • updatedb:第一次運行前,創建locate資料庫

  • grep,用於過濾/搜索指定字元串。可以使用正則表達式,能配合多種命令使用。

    用法:grep 【選項】 查找內容 源文件

    -A:顯示符合的行及之後的內容

    -B:顯示符合的行及之前的內容

    -C:顯示符合的行及前後的內容

    -c:計算符合的行數目

    -n:顯示匹配行和行號

    -i:忽略大小寫

    規則表達式

    :'grep'表示匹配所有以grep開頭的行

    '表示匹配所有以grep結尾的行

    .:'gr.p'表示匹配'gr'後面接任意字元然後是'p'

    :'grep'表示匹配一個或多個空格後緊跟grep的行

    []:[Gg]rep表示匹配Grep與grep

    []:[A-FH-Z]rep表示匹配不以A-F、H-Z開頭並緊跟rep的行

    例如(grep命令大多數時候多要和別的命令一起使用才有意義):

    ps -ef | grep -c SVN:查找指定的進程的個數

    cat test.txt | grep -f test2.txt:從text2.txt中讀取關鍵字後在test.txt中搜索

    cat test.txt | grep nf text2.txt:從text2.txt中讀取關鍵字後在text.txt中搜索並顯示行號

    grep 'linux' text.txt test2.txt:從多個文件中搜索關鍵字'linux'

    cat test.txt | grep -E 'ed|at':顯示包含ed或at的行

❽ 如何在Linux系統釋放磁碟空間

釋放Linux磁碟空間的一種方法

1、用df 檢查發現/根目錄可用空間為0

[root@/]#df -h

2、用檢查發現 各目錄佔用的空間都很少,有約3G的空間莫名其妙地丟了。

[root@/]# -m –max-depth=1 |sort -gr

3、用lsof檢 查後才發 現 原因是,有文件被刪除, 而進程還活著, 因而造成還佔用空間的現象

[root@/]# lsof |grep delete

根據lsof列出的進程號,kill這些進程後,空間就釋放出來了。

❾ 如何用c++代碼實現簡單的linux中gr

libMyNative.so:MyNative.o makefile gcc -Wall -rdynamic -shared -o libMyNative.so MyNative.o MyNative.o:MyNative.c MyNative.h gcc -Wall -c MyNative.c -I./ -I/sandbox/java2S/jdk1.6.0_16/include -I/sandbox/JAVA2S/jdk1.6.0_16/include/linuxcl:rm -rf *.o *.so libMyNative.so:MyNative.o makefile gcc -Wall -rdynamic -shared -o libMyNative.so MyNative.o MyNative.o:MyNative.c MyNative.h gcc -Wall -c MyNative.c -I./ -I/sandbox/JAVA2S/jdk1.6.0_16/include -I/sandbox/JAVA2S/jdk1.6.0_16/include/linuxcl:rm -rf *.o *.so 其中,「/sandbox/JAVA2S/jdk1.6.0_16」為JDK安裝目錄 「libMyNative.so」是Java類中static {System.loadLibrary("MyNative");}靜態方法中參數+lib 五、修改.bash_profile文件,配置環境變數,由於生成的.so文件在當前目錄下,故 .bash_profile文件設置如下 export LD_LIBRARY_PATH=./ 六、執行java MyNative命令,結果如下

熱點內容
使命召喚生化武器怎麼配置 發布:2024-10-10 13:13:15 瀏覽:490
磁碟陣列怎麼配置管理口 發布:2024-10-10 13:10:05 瀏覽:187
如何撤銷自己的配置 發布:2024-10-10 12:41:47 瀏覽:687
win7無法復制文件夾 發布:2024-10-10 12:40:11 瀏覽:147
文章存儲結構 發布:2024-10-10 12:40:11 瀏覽:881
添加多個FTP網站的方法有哪些 發布:2024-10-10 12:03:03 瀏覽:842
表格怎麼調用網頁資料庫資料庫數據 發布:2024-10-10 11:37:33 瀏覽:657
海力壓縮機 發布:2024-10-10 11:32:26 瀏覽:526
洗過的海帶存儲方法 發布:2024-10-10 11:19:00 瀏覽:241
64H的源碼 發布:2024-10-10 11:06:01 瀏覽:153