I am trying to create an bash script to expand a LVM disk, I mean, trying to automatize all the process from the video bellow:
Youtube search:
How To Extend LVM Disk For Linux Virtual Machine On VMware
At this point, I am very new in bash script and I am facing this just as a try, I don't know if I will get the final result that I need.
Well, I am stuck at the grep option bellow:
Code:
#!/bin/bash
# Increase LVM Disk
echo"$(fdisk -l)"
echo Which disk you want to increase the size? "(Please provide the full path, Example: /dev/sda2):"
read disk1
diskcompare="$(fdisk -l | grep "$disk1 " -o --max-count=1)"
if [ "$diskcompare" == "$disk1 " ]; then
echo"Valid Disk."
else
echo"Invalid Disk."
fi
I would like to compare the path (disk1) with the fdisk -l command to check if it is a valid disk.
The problem is that the way that it is writed at the moment it accept you to continue the script if you not type the entire path, example:
Code:
[root@linuxtest ~]# ./test.sh
Disk /dev/sda: 16.1 GB, 16106127360 bytes, 31457280 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x000d345c
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 2099199 1048576 83 Linux
/dev/sda2 2099200 16777215 7339008 8e Linux LVM
/dev/sda3 16777216 31457279 7340032 8e Linux LVM
Disk /dev/mapper/centos-root: 14.2 GB, 14164164608 bytes, 27664384 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/mapper/centos-swap: 859 MB, 859832320 bytes, 1679360 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Which disk you want to increase the size? (Please provide the full path, Example: /dev/sda2):
/sda2
Valid Disk.
[root@linuxtest ~]#
It should match only the exactly values /dev/sda1 , /dev/sda2 or /dev/sda3.
Any help will be welcomed
Ty!
Last edited by Scrutinizer; 03-12-2020 at 09:14 AM..
Reason: quote tags -> code tags; Removed non-existing-font definition; Removed multi-color
The caret sign (^)means that the expression only matches text at the beginning of the line.
There already had be a space at the end.
These two measures make that a partial match will not work.
Hello,
I am running below command as root user
#nodetool cfstats tests | grep "Memtable switch count"
Memtable switch count: 12
Where as when I try to run same command as another user it gives different result.
#su -l zabbix -s /bin/bash -c "nodetool cfstats tests | grep "Memtable switch... (10 Replies)
I have one text file, contains some values like <Q1:Name>1000000</Q1:Name>. I want to read the values and stores into an array for searching the each values into a file locations.
If I use this
find location |xargs grep -l "<Q1:Location>100000055042</Q1:Location>",I get the files, are having... (7 Replies)
Hi, im taking an entry Unix class, and as part of my lab assignment I have to copy all files in the /home/david/lab3 directory that have the file extension .save to your lab3/temp directory. I'm having trouble getting the grep to do anything worth while
I've been trying to do:
cp... (6 Replies)
i want to search in the current directory all the files that contain one word for example "hello"
i want to achieve it with the grep command but not with the grep * (2 Replies)
Hi guys, i wondering with any1 could help me with this.
I have this script will i need to "grep" an integer form a file x2. If the value is 0 then it's ok. But anything greater then 0, i'll ask the script to echo an error message. This is how the script looks like:
MESSAGEFILE=x2
STRING="0"
... (5 Replies)
Hi,
I am new to UNIX environment, to find a contents from a given files i have used the command "grep -l "<search word>" *.txt, it is given the file names which contains that particular word, but it is anyway to get entire details of the file .., i need the output like ls -ltr, filename... (3 Replies)
In my file contains special characters,alphanumerics all thease characters
how to search the pattern between two strings that contains special characters
Ex: find pattern between allocation_map_128*2 to creative.clicks_allocate != KNULL
so there are special characters in my... (1 Reply)
I am doing "ps -f" to see my process.
but I get lines that one of it represents the ps command itself.
I want to grep it out using -v flag, but than I get another process that belongs to the GREP itself :
I would like to exclude
# ps -f
UID PID PPID C STIME TTY TIME CMD... (2 Replies)
I want to list all files created in a day but it doesn't work
$ day=\'`date "+%b %d"`\'
$ echo $day
>>> 'Mar 12'
$ ll |grep $day
>>> can't open 12'
????? please help me (3 Replies)