Q. How do I list all open files for a Linux or UNIX process using command line options?
Continue reading “Linux / UNIX: List Open Files for Process”
Q. Can you tell me more about dot-files that shell and many UNIX command reads?
Continue reading “Explain Linux / UNIX dot-files”
How do I check whether a directory is empty or not under Linux / UNIX using a shell script? I’d like to take some action if directory is empty.
hat is a soft (“symbolic”) link? How do I create a soft link (symbolic link) under UNIX or Linux operating system?
Q. How do I display file inode number using command line?
A. An inode is a data structure on a Unix / Linux file system. An inode stores basic information about a regular file, directory, or other file system object. You can use following two commands to display an inode:
[a] ls command : list directory contents
[b] stat command : display file or file system status
Type ls command with -i ( print the index number of each file ) option:
$ ls -i /etc/passwd
752010 is index number (inode) for /etc/passwd file.
$ stat /etc/passwd
Size: 2026 Blocks: 8 IO Block: 4096 regular file
Device: 811h/2065d Inode: 752010 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2007-08-20 23:19:20.000000000 +0530
Modify: 2007-07-07 00:06:56.000000000 +0530
Change: 2007-07-07 00:06:56.000000000 +0530
You can use inode number to delete or search a file.
Q. Can you specify rules for naming a file name under Linux?
A. When you save a data, you nee to select a file name, you need to follow certain rules and regulation regarding the length of the name and the types of characters you include.
Rules for naming file names
The rules for naming a file names under Linux (and UNIX like oses) are as follows:
[a] The file names can be up to 255 characters (or bytes) long
[b] You cannot use all special characters, try to use:
=> Uppercase or lowercase letters
=> Special characters, such as: +, -, _, .
[c] File names are case-sensitive. Thus, the following file names all are different:
vivek Vivek VIVEK VIVek
[d] Try to avoid non printable and following characters in filenames:
/, >, <, ?, “, ‘, blank space
How do I show hidden files?
Use ls -a or ls -la command:
$ ls -la
$ ls -a
Use -a to see invisible file names.
How do I access filenames with spaces?
To access a filename with spaces, enclose the filename in quotes:
$ cat "my bio data.txt"
$ cd "a long dir nane"
Please note that above rules almost apply to other UNIX like operating system such as HP-UX, Solaris, FreeBSD etc.
Q. Iâ€™m new to Linux and how do I examine filesystem and identify regular files or directories?
A. Both Linux and UNIX comes with ls command for examining the filesystem. You can use ls command to look at the filesystem. ls command can display:
=> Character devices
=> Regular files
=> Sym links (symbolic links)
=> Block devices
ls command examples
Display /etc directory files, enter:
$ ls /etc
When invoked without any arguments, ls lists the files in the current working directory:
Use -l (long option) to lists filenames, sizes, permissions, type and all other information:
$ ls /etc/passwd
-rw-r--r-- 1 root root 2453 Jul 17 16:25 /etc/passwd
See Linux / UNIX file permissions for more information
A directory is marked with a d as the first letter of the permissions field:
ls -ld /etc
drwxr-xr-x 88 root root 12288 Aug 5 23:46 /etc
A symbolic link is marked with an l (lower case L) as the first letter of the permissions string:
ls -l /bin/nisdomainname
lrwxrwxrwx 1 root root 8 Jul 10 08:50 /bin/nisdomainname -> hostname
- A named pipe is marked with a p as the first letter of the permissions string.
- A socket is marked with a s as the first letter of the permissions string.
- A character device is marked with a c as the first letter of the permissions strings. (ls -l /dev/console)
- A block device is marked with a b (ls -l /dev/sdb1).