DEV Community

Aryan Vaishnani
Aryan Vaishnani

Posted on

Hidden Files & Directories in Linux

In Linux, files or directories starting with a dot (.) are hidden.

Example:

.bashrc
.gitconfig
.ssh

These files are usually used for:

  1. Configuration
  2. User settings
  3. Application data
  4. System customization

Why Hidden Files Exist

Hidden files help keep:

  1. Configuration files separate
  2. Home directory clean
  3. System settings protected from accidental changes

Examples of Hidden Files

File Purpose
.bashrc Bash shell configuration
.profile User login settings
.gitconfig Git configuration
.ssh SSH keys and configs
.vimrc Vim editor settings

View Hidden Files

Normal ls does not show hidden files.

Use:

ls -a

Example Output

.bashrc
.profile
.ssh
Documents
Downloads

Detailed Hidden File View

ls -la

Shows:

  1. Hidden files
  2. Permissions
  3. Owner
  4. File size

Create Hidden File

Add . before filename.

Example:

touch .secret

Create Hidden Directory

mkdir .config

Access Hidden Directory

cd .config

Real-World Usage

SSH Configuration

cd ~/.ssh

Contains:

id_rsa
authorized_keys
config

Git Configuration

cat ~/.gitconfig

Bash Configuration

nano ~/.bashrc

Common for:

  1. Aliases
  2. PATH variables
  3. Shell customization

Hide Existing File

Rename file with dot.

Example:

mv notes.txt .notes.txt

Now file becomes hidden.

Find Hidden Files

find . -name ".*"

Important Hidden Directories

Directory Purpose
~/.ssh SSH keys
~/.config App configs
~/.kube Kubernetes configs
~/.docker Docker configs
~/.git Git repository data

Real-World DevOps Example

Kubernetes Config

ls ~/.kube

Contains:

config

Used by:

kubectl

Important Notes

Hidden Does NOT Mean Secure

Hidden files are only visually hidden.

Anyone with permissions can still access them.

Example

cat .secret

still works.

Best Practices

  1. Do not delete hidden files carelessly
  2. Backup configuration files
  3. Protect sensitive hidden files with permissions
  4. Use hidden directories for configs only

Quick Commands Summary

Command Purpose
ls -a Show hidden files
ls -la Detailed hidden files
touch .file Create hidden file
mkdir .dir Create hidden directory
mv file .file Hide file

Top comments (0)