Visit Our UNIX and Linux User Community


Another one line command where I'd like to determine if Ubuntu or Red Hat when running command


 
Thread Tools Search this Thread
Top Forums UNIX for Beginners Questions & Answers Another one line command where I'd like to determine if Ubuntu or Red Hat when running command
# 1  
Old 10-26-2019
Another one line command where I'd like to determine if Ubuntu or Red Hat when running command

Hello Forum,

I'm making very good progress on my report thanks to the very helpful people on this forum. I've been able to successfully create my report for my Red Hat servers. But I do have a few ubuntu servers in the mix and I'd like to capture some data from them when an ssh connection is made.

I have a command here to find the inactive kernels on a Red Hat VM:

Code:
rpm -qa | grep '^kernel-[0-9]' |grep -vE `uname -r` | paste -sd \;

I'm trying to get this one line command to be Linux Type aware by issuing something like the following where if the os-release is Red Hat then I issue the command above to find the Red Hat installed kernels. This isn't working but this is what I'm trying to do:

Code:
awk -F= '/^NAME/{print $2}' /etc/os-release 2>/dev/null || grep Red |cat /etc/redhat-release 2>/dev/null || lsb_release -a 2>/dev/null | grep Description | cut -f2

I'm not sure if it's even possible but I would really like to issue the command to find the installed kernels for Red Hat servers and if the servers are ubuntu then issue another command for Ubuntu inactive kernels. I'm not sure what the command is to find the Ubuntu inactive kernels so I'll look that up...but for this post could someone point me in the right direction here on how to write the one line command to check for O/S type and issue commands based on that type.

Thank you.
# 2  
Old 10-27-2019
Moderator's Comments:
Mod Comment Please do not use QUOTE tags for formatting CODE, sample input, output or error message. Only user CODE tags.
This User Gave Thanks to Neo For This Post:
# 3  
Old 10-27-2019
Why not simply ls the /boot directory?
# 4  
Old 10-27-2019
Hello RudiC,

I researched how to use ls and /boot to find the distribution I was connecting to but I couldn't find a solution. But I did find another way using python that seems to be working for me with my very early tests:

Code:
python -mplatform | grep -qi red && echo "RedHat" || echo "ubuntu"

This does work in that it looks for the work
Code:
red

which means I can identify Red Hat Servers. Where I can see my code failing though is that my assumption is that if it's not Red Hat then it must be Ubuntu. I'm trying now to find a way to identify each type of distribution we have and specifically test for Red Hat (like I'm currently doing) or Ubuntu or even CentOS. Would you or someone else have a suggestion for me on how I can use my code to test for various types of Linux distributions?

Thank you.
# 5  
Old 10-28-2019
How about the

Code:
lsb_release -a

command?
This User Gave Thanks to RudiC For This Post:
# 6  
Old 10-28-2019
Hello again RudiC,

I suppose I could use lsb_release -a as a check...but what would be the one line command to check if Red Hat to run an instruction and if not Red Hat and it's Ubuntu to run a different instruction? That's the part I'm having trouble with now. Here is the code I've tried using the python bit I found:

Code:
if python -mplatform | grep -qi red; then rpm -qa | grep '^kernel-[0-9]' | grep -vE `uname -r` | paste -sd \; else python -mplatform | grep -qi Ubuntu; then echo "This is Ubuntu"

Thank you.

Last edited by greavette; 10-28-2019 at 10:27 AM..
# 7  
Old 10-28-2019
man lsb_release might help. E.g.
Code:
$ lsb_release -is
Ubuntu

A case statement could be used
Code:
case  $(lsb_release -is) in
    red*)    # run red hat command
    ;;
    Ubu*)    # run ubuntu command
    ;;
esac

This User Gave Thanks to RudiC For This Post:

Previous Thread | Next Thread
Test Your Knowledge in Computers #785
Difficulty: Medium
The TRS-80 Model 100 was a desktop-style computer introduced in 1983.
True or False?

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Red Hat and Ubuntu shell scripting

Are basic scripts in awk or bash or perl or other shell scripting languages the same in RHEL red hat as ubuntu? (1 Reply)
Discussion started by: cmccabe
1 Replies

2. UNIX Desktop Questions & Answers

Send Email from command line in Ubuntu 11.10

Have problem to send email from command line according to the posts like this one: To have the ability to send email from the command line, you will need to install the mailutils and postfix packages with the following commands. apt-get install mailutils apt-get install postfix Now... (1 Reply)
Discussion started by: yifangt
1 Replies

3. Shell Programming and Scripting

running variable on command line

Hi, I have a unix script, and I have problem, where I work out the variable I need. But it will not excute the variable from the script ? See my script below for details : #!/bin/sh ENVGRP=`hostname |cut -c1-3 | tr '' ''` ENVINST=${ENVGRP}`hostname -i |cut -d\. -f 4` echo... (4 Replies)
Discussion started by: fettie
4 Replies

4. UNIX for Dummies Questions & Answers

Running set options from the command line and bash command

I'm reading about debugging aids in bash and have come across the set command. It says in my little book that an addition to typing set you can also use them "on the command line when running a script..." and it lists this in a small table: set -o option Command Line... (5 Replies)
Discussion started by: Straitsfan
5 Replies

5. Ubuntu

[UBUNTU] mount.nfs fails in Ubuntu / Works on Red Hat!!!

Gurus, I want log in locally to my Lucid (10.04) workstation and have my code saved over the network on my samba account At work, all developers have samba user ids and when we were running Red Hat, we went thru the following procedure to get setup. * open a shell session to NFS server... (2 Replies)
Discussion started by: alan
2 Replies

6. Ubuntu

WGET in Ubuntu( vistual img ) vs Red Hat

Hi I need to fetch a file using wget command. In read Hat I have the file I need without any problem while in Ubuntu ( installed on a virtual image ) it doesn't work. More precisely my wget need to fetch a page from a web site with secure authentication so teh syntax I am using is wget... (7 Replies)
Discussion started by: manustone
7 Replies

7. Ubuntu

make Ubuntu and Red Hat boot partitions

Is it possible to make multiboot partitions of Ubuntu and red hat Linux? (4 Replies)
Discussion started by: sito
4 Replies

8. Red Hat

"SCRYPT" command in RED HAT 9

Hello, I wanted to simple command to encrypt a file. Using google I got a command "crypt". I could test it very well on Sun solaris. My red hat system says "command not found".Can you please tell me if I can find that package on the cd!!! (2 Replies)
Discussion started by: nsharath
2 Replies

9. Shell Programming and Scripting

telnet shell script on red hat 9 cmd line only

i would like to make a shell script (red hat 9 cmd line only) to telnet to my local isp's webmail server on port 25 and send it commands such as helo :) help would be much appreciated, and i found no posts similar that answered my question... the closest i've gotten to an answer from about 8... (3 Replies)
Discussion started by: kypeswith
3 Replies

Featured Tech Videos