30 Advanced Termux Commands for Android Phones

In this article, we will explore 25 advanced Termux commands that can help you unlock the full potential of your Android device. These commands range from package management to network diagnostics and text processing, providing you with a powerful toolkit for enhancing your mobile experience.

Key Takeaways

  • Upgrade your Termux packages regularly to ensure optimal performance.
  • Utilize the termux-setup-storage command to access external storage on your device.
  • Generate SSH keys using ssh-keygen for secure remote access.
  • Use curl and wget commands for downloading files from the internet.
  • Explore text manipulation and file extraction with tar command.

1. pkg upgrade

Keeping your system up-to-date is crucial for security and access to the latest features. The pkg upgrade command in Termux ensures that all installed packages are updated to their latest versions. Here’s how to use it:

  1. Open Termux.
  2. Type pkg update to refresh the list of available packages.
  3. After updating the package list, execute pkg upgrade to upgrade the packages.

Remember, it’s always a good idea to update your package list before upgrading to avoid any conflicts.

This process may take some time depending on the number of updates and your internet connection speed. It’s also wise to regularly check for updates to keep your environment secure and efficient.

2. termux-setup-storage

Accessing your Android device’s storage from within Termux is essential for managing files and scripts. The termux-setup-storage command is your gateway to integrating Termux with your device’s file system. Running this command will prompt you to grant file access permissions to Termux, allowing it to interact with your storage.

After executing termux-setup-storage, you’ll find that Termux creates a directory at ~/storage, which contains convenient symlinks to various storage locations:

  • /sdcard for your internal storage
  • /storage/emulated/0 for the primary shared/external storage
  • /storage/self/primary for the same primary shared storage

Remember, it’s crucial to run termux-setup-storage when you first install Termux or when you need to reset permissions after an update. This ensures that Termux has the necessary permissions to read and write files on your device.

By setting up storage access, you can easily transfer files between Termux and other apps, edit documents, or manage downloads directly from the command line.

3. ssh-keygen

The ssh-keygen command is a vital tool for generating secure SSH keys on your Android device using Termux. Creating a strong SSH key pair is crucial for establishing secure remote connections to servers without the need for passwords.

To generate a new SSH key pair, simply execute ssh-keygen and follow the on-screen prompts. You’ll be asked to specify the file in which to save the key and an optional passphrase for added security. Here’s a typical flow:

  1. Run ssh-keygen in the terminal.
  2. Enter the file path to save the key, or press Enter for the default location.
  3. Optionally, enter a passphrase for the key.
  4. Your public and private keys are now created.

Remember, it’s important to keep your private key secure and never share it. The public key can be safely distributed to systems where you wish to enable SSH access.

4. curl

curl is a powerful command-line tool used for transferring data with URLs. It supports a wide range of protocols, including HTTP, HTTPS, FTP, and more, making it an indispensable utility for network requests.

To perform a simple GET request and display the content of a webpage in the terminal, you can use:

curl http://example.com

For more advanced usage, curl offers numerous options:

  • -X to specify the request method (e.g., GET, POST)
  • -H to add headers to the request
  • -d to send data in a POST request
  • --data-urlencode to URL-encode data
  • -o to save the output to a file

Remember, curl is not just for downloading files; it can also be used to interact with APIs, submit forms, and even upload files.

Understanding and mastering curl commands can significantly enhance your ability to interact with the web directly from your Android device using Termux.

5. wget

wget is a powerful command-line utility for downloading files from the web. It supports HTTP, HTTPS, and FTP protocols, as well as retrieval through HTTP proxies.

  • To download a file, simply use wget [URL].
  • For downloading in the background, add the -b flag.
  • To resume an interrupted download, use wget -c [URL].

wget is particularly useful for downloading large files or mirroring entire websites with its recursive downloading feature.

Remember to check the wget --help or man wget for more advanced options and usage examples.

6. tar

The tar command is a powerful tool used for compressing and archiving files. Tar stands for tape archive, and it’s essential for managing backups and transferring a large number of files efficiently. With tar, you can create a single archive file from many files or extract files from an archive.

To use tar, you’ll typically work with three main operations: creating, extracting, and listing the contents of tar archives. Here’s a quick guide on how to use these operations:

  • Creating an archive: tar -cvf archive_name.tar /path/to/directory
  • Extracting files from an archive: tar -xvf archive_name.tar
  • Listing archive contents: tar -tvf archive_name.tar

Remember that tar can also handle compressed files, such as .tar.gz or .tar.bz2, by adding the -z or -j option respectively for gzip and bzip2 compression.

When working with tar, it’s important to be mindful of the directory paths and file permissions to ensure that the archive reflects the intended structure and access rights.

7. ping

The ping command is essential for network diagnostics on your Android device using Termux. It sends ICMP echo requests to a specified host and measures the time it takes to receive a reply, helping you determine if the host is reachable and the quality of the network connection.

To use ping, simply type ping followed by the domain name or IP address. Here’s an example of pinging google.com:

ping google.com

The output will provide several pieces of information:

  • The IP address of the target host.
  • The time in milliseconds it takes for the echo request to go and come back, which is the round-trip time.
  • The number of packets sent, received, and the percentage of packet loss.

Remember, continuous pinging can be stopped by pressing Ctrl + C. This will also display a summary of the ping process, including the minimum, average, and maximum round-trip times.

8. netstat

Netstat is a powerful command-line tool that displays network connections, routing tables, interface statistics, masquerade connections, and multicast memberships. With netstat, you can quickly diagnose network issues and monitor the network traffic on your Android device using Termux.

To use netstat, you might start with some of the following options:

  • -a: Display all sockets.
  • -t: Show TCP connections.
  • -u: Show UDP connections.
  • -l: Display listening server sockets.
  • -p: Show the PID and name of the program to which each socket belongs.

Remember, running netstat without any options will display a list of open sockets and their status. This can be a good starting point for network troubleshooting.

Understanding the output of netstat is crucial for advanced users. The command provides a wealth of information that can be used to ensure your network is functioning correctly and to identify potential security threats.

9. nmap

Nmap (Network Mapper) is a powerful tool used for network discovery and security auditing. It’s widely used by system administrators to scan for open ports, determine what hosts are available on the network, and identify potential security risks.

To get started with nmap, you can perform a simple scan of a target IP to see which ports are open:


Here are some common flags and their purposes:

  • -sS: Perform a SYN scan
  • -p: Specify ports to scan (e.g., -p 22,80,443)
  • -A: Enable OS detection, version detection, script scanning, and traceroute
  • -v: Increase verbosity

Remember, unauthorized scanning of networks can be illegal. Always have permission before conducting any scans with nmap.

10. python

Python is an incredibly powerful programming language that you can use on your Android device through Termux. With Python, you can write scripts, automate tasks, and even develop applications right from your phone or tablet.

To get started with Python in Termux, you’ll first need to install it using the package manager. Here’s how:

  1. Update the package list: pkg update
  2. Install Python: pkg install python

Once installed, you can run Python scripts using the python command or enter the interactive Python shell by simply typing python.

Python also has a vast ecosystem of libraries that can be installed using pip, Python’s package installer. Whether you’re handling data analysis, web scraping, or network automation, there’s likely a Python library that can help you out.

Remember to keep your Python environment up to date by regularly upgrading the packages with pip install --upgrade package-name.

11. git

Git is an essential tool for version control, allowing you to track changes, revert to previous stages, and collaborate on projects with ease. Termux provides a fully functional Git environment on your Android device.

To get started with Git in Termux, you’ll first need to install it using the command pkg install git. Once installed, you can configure your Git environment with your username and email:

git config --global user.name "Your Name"
git config --global user.email "your_email@example.com"

Here are some common Git commands you might find useful:

  • git clone [repository URL]: Clone a repository into a new directory
  • git status: Check the status of your files
  • git add [file]: Add a file to the staging area
  • git commit -m "message": Commit changes to the repository
  • git push: Update remote refs along with associated objects

Remember, Git commands in Termux work just like on any other platform. The power of Git combined with the portability of Termux can greatly enhance your productivity on the go.

12. nano

Nano is an easy-to-use text editor for Unix-like operating systems, which makes it a perfect fit for editing files directly on your Android device using Termux. Unlike more complex editors like vim, nano is straightforward and ideal for beginners or those who prefer simplicity.

To get started with nano, simply type nano filename to create or edit a file. Here are some common keyboard shortcuts to help you navigate nano efficiently:

  • Ctrl + O: Save the file
  • Ctrl + X: Exit the editor
  • Ctrl + K: Cut the current line
  • Ctrl + U: Paste the cut text

Nano’s search and replace function is particularly useful for making quick edits. To search within a file, use Ctrl + W and to replace text, use Ctrl + \.

Remember that while nano is user-friendly, it still offers powerful features for text manipulation and is a valuable tool for any Termux user.

13. vim

Vim is an advanced text editor that is a powerful tool for editing code, configuring system files, and writing scripts directly from your Android device using Termux. Its modal nature allows for efficient text manipulation and navigation.

  • To start editing a file, simply type vim filename.
  • Use :w to save changes, and :q to quit.
  • Combine them with :wq to save and exit, or :q! to exit without saving.

Vim has a steep learning curve, but mastering it can significantly boost your productivity. It supports numerous plugins and configurations that can be tailored to your needs.

Vim’s versatility is unmatched, making it an indispensable tool for developers and system administrators alike.

14. tmux

tmux is a terminal multiplexer that allows you to manage multiple terminal sessions from a single window. It’s particularly useful for long-running processes or when working with multiple projects simultaneously.

  • To start a new session, simply type tmux new -s session_name.
  • Detach from a session with Ctrl+b d.
  • Reattach to a session using tmux attach -t session_name.

tmux sessions are persistent, which means you can disconnect and leave your programs running, then reconnect later.

With tmux, you can also split your terminal window into panes, customize your environment, and script entire workspaces. It’s an indispensable tool for power users who need to keep their workflow organized and efficient.

15. htop

htop is an interactive system-monitor process-viewer. It is designed as an alternative to the Unix program top. It shows a frequently updated list of the processes running on a computer, normally ordered by the amount of CPU usage. Unlike top, htop provides a full list of processes running, instead of the top resource-consuming processes. htop uses color and gives visual information about processor, swap and memory status.

To use htop, you simply need to type htop in your Termux terminal. Here are some of the interactive commands you can use within htop:

  • F1 or ?: Access help.
  • F2: Setup htop and configure its options.
  • F3: Search for a process.
  • F5: Tree view.
  • F6: Sort by various criteria.
  • F9: Kill a process.
  • F10: Quit htop.

htop is not only a powerful tool for monitoring system processes but also for taking action on them, such as terminating misbehaving applications. It’s a must-have for anyone looking to manage their system’s resources effectively.

16. ifconfig

ifconfig is a command-line utility to configure and display network interface parameters. It is used to initialize an interface, assign IP address, enable or disable an interface, and much more.

  • To view all active interfaces: ifconfig -a
  • To configure a new IP address: ifconfig eth0 netmask
  • To disable an interface: ifconfig eth0 down
  • To enable an interface: ifconfig eth0 up

Remember that ifconfig is deprecated in many Linux distributions and replaced by the ip command. However, it remains available in Termux and can be a familiar tool for those transitioning from older systems or learning network basics.

17. apt-get

apt-get is a powerful package management command used in Termux to install, update, and remove packages. It interfaces with the Advanced Packaging Tool (APT) and simplifies the process of managing software.

To effectively use apt-get, familiarize yourself with some of its common commands:

  • apt-get update: Updates the list of available packages and their versions, but it does not install or upgrade any packages.
  • apt-get upgrade: Installs the newest versions of all packages currently installed on the user’s system.
  • apt-get install [package_name]: Installs a specific package.
  • apt-get remove [package_name]: Removes a specific package from your system.
  • apt-get autoremove: Removes packages that were automatically installed to satisfy dependencies for other packages and are now no longer needed.

Remember to run apt-get update before installing new software to ensure you’re getting the latest versions available.

18. dpkg

dpkg is the base package management system for Debian-based distributions, including Termux on Android. It’s used to install, remove, and provide information about .deb packages.

  • To install a package: dpkg -i package_file.deb
  • To remove a package: dpkg -r package_name
  • To list all installed packages: dpkg -l

dpkg is powerful but can be complex. It’s recommended to use apt or apt-get for a more user-friendly experience when installing or updating packages, as they handle dependencies automatically.

19. find

The find command is a powerful tool for searching and locating files and directories based on various criteria such as name, size, modification date, and more. It’s an essential command for file management and system navigation in Termux.

To use find, you specify the path where the search should begin and the criteria for the search. Here are some common examples of find usage:

  • To find all .txt files in the current directory: find . -name "*.txt"
  • To search for directories only: find / -type d
  • To find files larger than 10MB: find / -size +10M

The find command can be combined with other commands using pipes (|) to perform complex search operations and process the results.

Remember that find can be resource-intensive, especially when searching through large directories. Use it with care to avoid performance issues on your Android device.

20. grep

grep is a powerful command-line utility used for searching plain-text data sets for lines that match a regular expression. Its name comes from the ed command g/re/p (globally search a regular expression and print).

  • To search for a specific string in a file, use grep 'search_string' filename.
  • To perform a case-insensitive search, add the -i option.
  • Use -r to recursively search directories.
  • The -c option will count the number of lines that match the pattern.

grep is not just a search tool; it’s a fundamental command for text processing in Unix-like environments. Mastering grep can significantly enhance your ability to work with text on your Android device using Termux.

21. sed

Stream Editor (sed) is a powerful utility for performing text transformations on a stream (i.e., a file or input from a pipeline). With sed, you can easily perform complex text manipulations with simple commands.

  • Search and replace text patterns.
  • Delete lines or specific text.
  • Insert or append text.
  • Transform text, such as changing case.

sed commands are written in a concise syntax that can handle intricate text editing tasks with just a single line of code. For example, to replace all occurrences of ‘android’ with ‘Android’, you would use:

sed 's/android/Android/g' filename.txt

Understanding sed can significantly enhance your text processing capabilities on Termux.

22. awk

Awk is a powerful programming language designed for text processing and typically used for data extraction and reporting. With its data-driven scripting capabilities, awk excels in transforming data, generating reports, and performing complex pattern matching.

Here are some common uses of awk:

  • Printing specific fields from a file
  • Summing up numbers from a column
  • Filtering text based on patterns

For example, to print the first column of a file, you would use:

awk '{print $1}' filename

Awk is particularly useful for one-liners that quickly provide insights into your data without the need for writing full-fledged programs.

Understanding awk‘s syntax and functions can significantly enhance your command-line data manipulation skills.

23. sort

The sort command in Termux is an essential tool for organizing text data. It allows you to sort the contents of a file or standard input, alphabetically or numerically, and output the results to standard output or a file. Sort can also handle complex sorting by multiple keys and custom sort orders.

Here are some common uses of sort:

  • Sorting a file alphabetically: sort file.txt
  • Sorting numerically (using the -n flag): sort -n file.txt
  • Sorting in reverse order (using the -r flag): sort -r file.txt
  • Sorting by a specific column (using the -k flag): sort -k2 file.txt

Remember, sort can be combined with other commands using pipes (|) to perform advanced sorting operations on the fly. For example, you can pipe the output of grep into sort to first filter and then sort the data.

24. diff

The diff command is a powerful tool for comparing files and directories line by line. It’s particularly useful for developers and system administrators who need to identify changes between different versions of files.

To compare two files, simply use the command diff file1 file2. The output will show you lines that differ, with symbols indicating additions or deletions. Here’s a quick reference for reading the output:

  • < indicates a line from file1
  • > indicates a line from file2

For more advanced usage, diff offers several options:

  • -i Ignores case differences in file contents.
  • -w Ignores all white space.
  • -u Outputs in unified format, which is easier to read and understand.

Remember, diff can also be used to generate patch files, which are then applied using the patch command. This is a common workflow in collaborative coding environments.

25. watch

The watch command is a powerful tool for monitoring changes in real-time. It executes a program periodically, showing output in fullscreen. This command is particularly useful for tracking the progress of other commands or scripts.

  • To watch the contents of a directory change, you can use watch ls -l.
  • For monitoring dynamic log files, try watch tail -n 20 /path/to/log.

Remember, the default interval for watch is 2 seconds, but you can specify any interval with the -n option.

The watch command is invaluable for system administrators and power users who need to keep an eye on system processes or files. It’s simple to use yet highly effective in a variety of scenarios.


In conclusion, mastering these 30 advanced Termux commands for Android phones can truly unlock the full potential of your device. From enhancing productivity to exploring new possibilities, these commands offer a wide range of functionalities that can take your Android experience to the next level. Whether you are a beginner or an experienced user, incorporating these commands into your workflow can significantly improve your efficiency and capabilities. So, don’t hesitate to dive in, experiment, and discover the endless possibilities that await you in the world of Termux commands.

Frequently Asked Questions

What is Termux?

Termux is an Android terminal emulator and Linux environment app that allows users to run Linux commands on their Android devices.

How can I upgrade packages in Termux?

You can upgrade packages in Termux by using the ‘pkg upgrade’ command, which updates all installed packages to the latest version.

What is the purpose of ‘ssh-keygen’ command in Termux?

The ‘ssh-keygen’ command in Termux is used to generate SSH keys for secure communication and authentication between devices.

How can I install new software in Termux using ‘apt-get’?

You can install new software in Termux using the ‘apt-get’ command, which is a package manager for installing and managing software packages.

What is the use of ‘grep’ command in Termux?

The ‘grep’ command in Termux is used for searching and matching specific patterns within files or output.

How can I monitor system processes in Termux with ‘htop’?

You can monitor system processes in Termux using the ‘htop’ command, which provides a visual representation of system processes and resource usage.

Leave a comment