Perl function to remove any element using value validation

rajeshkumar created the topic: perl function to remove any element using value validation
perl function to remove any element using value validation

Not Working –

my @items = (rajesh1, rajesh2,rajesh3,rajes4,rajesh5,rajesh7)
my $index = 0;
for my $value (@items) {
print "testing $value\n";
if ( $value == "rajesh1" or $value == "rajesh2" or $value == "rajesh3") {
print "removed value $value\n";
splice @items, $index, 1;
}
$index++;
}
print "@items"

Not Working

my @items = (rajesh1, rajesh2,rajesh3,rajes4,rajesh5,rajesh7)
my $element_omitted = "rajesh1";
@items = grep { $_ != $element_omitted } @items;
print "Value of @items";

Trying this now.

my $index = 0;
while ($index <= $#items ) { my $value = $items[$index]; print "testing $value\n"; if ( $value == 1 or $value == 3 ) { print "removed value $value\n"; splice @items, $index, 1; } else { $index++; } }

Regards,
Rajesh Kumar
Twitt me @ twitter.com/RajeshKumarIn

Tagged :

Delete line from string using perl

rajeshkumar created the topic: Delete line from string using perl

Questions:
Delete line from string using perl
Delete entry from array based on custom duplicate value.
How to delete lines that match certain pattern
============================
$info = ”
This is Rajesh
This is Ram
This is test
This is Raju

Some solutions which i found on net but none of them seems working.

Sol1

if($line =~ /MatchText/){
$line =~ s/ReplaceMe/REPLACED/gi;
}

Sol2

perl -ni -e 'print unless /pattern/' /path/to/filename

Sol3
$ cat /path/to/file | perl -e 'while(<>){ if( /pattern/ ) { $linecount++; } else { print "$_"; } } print STDERR "Deleted $linecount lines.\n"' > /path/to/newfile

Sol4
$_ = "$delete"; #readin file content into standard variable
s/pattern//g; #pattern will get replaced by nothing globally
$delete = $_; #new file content back into old file

Sol5

sed -e '/Bob/d' -e '/Mary/d' outfile

Regards,
Rajesh Kumar
Twitt me @ twitter.com/RajeshKumarIn

Tagged :

Remove the duplicate data from array using perl

rajeshkumar created the topic: Remove the duplicate data from array using perl

Remove the duplicate data from array using perl

Method 1
============================================
sub uniqueentr
{
return keys %{{ map { $_ => 1 } @_ }};
}

@array = ("perl","php","perl","asp”);

print join(" ", @array), "\n";
print join(" ", uniqueentr(@array)), "\n";

Method 2
============================================
sub uniq {
return keys %{{ map { $_ => 1 } @_ }};
}

@my_array = ("one","two","three","two","three");
print join(" ", @my_array), "\n";
print join(" ", uniq(@my_array)), "\n";

Method 3
============================================
sub uniq2 {
my %seen = ();
my @r = ();
foreach my $a (@_) {
unless ($seen{$a}) {
push @r, $a;
$seen{$a} = 1;
}
}
return @r;
}
@my_array = ("one","two","three","two","three");
print join(" ", @my_array), "\n";
print join(" ", uniq2(@my_array)), "\n";

Method 4
============================================
my %unique = ();
foreach my $item (@myarray)
{
$unique{$item} ++;
}
my @myuniquearray = keys %unique;

Method 5
============================================
sub duplicate {
my @args = @_;
my %items;
for my $element(@args) {
$items{$element}++;
}
return grep {$items{$_} > 1} keys %items;
}

Method 6
============================================
#! /usr/bin/perl -w

use strict;

sub uniq{
my %temp_hash = map { $_, 0 } @_;
return keys %temp_hash;
}

my @test_array = qw/ 1 3 2 4 3 2 4 7 8 2 3 4 2 3 2 3 2 1 1 1 /;
my @uniq_array = uniq(@test_array);
print "@uniq_array\n";

Method 7
============================================
%seen=();
@unique = grep { !$seen{$_} ++ } @array;

Method 8
============================================
my @in=qw(1 3 4 6 2 4 3 2 6 3 2 3 4 4 3 2 5 5 32 3); #Sample data
my @out=keys %{{ map{$_=>1}@in}}; # Perform PFM
print join ' ', sort{$a<=>$b} @out;# Print data back out sorted and in order.

Reference:
Different Source of Google Search

Regards,
Rajesh Kumar
Twitt me @ twitter.com/RajeshKumarIn

Tagged :

Foreach Vs for Vs while in perl

rajeshkumar created the topic: foreach Vs for Vs while in perl

Definition 1:
In the while loop, Perl reads a line of input, puts it into a variable, and runs the body of the loop. Then, it goes back to find another line of input.

But in the foreach loop, the line-input operator is being used in a list context (since foreach needs a list to iterate through). So it has to read all of the input before the loop can start running.

That difference will become apparent when the input is coming from your 400 MB web server logfile! It’s generally best to use code like the while loop’s shortcut, which will process input a line at a time, whenever possible. Source-The Llama book

Definition 2:
What Alex Reynolds says in stackoverflow.com
For most purposes, you probably won’t notice a difference.
However, foreach reads each line into a list (not an array) before going through it line by line, whereas while reads one line at a time.
As foreach will use more memory and require processing time upfront, it is generally recommended to use while to iterate through lines of a file.

In addition to the previous responses, another benefit of using while is that you can use the $. variable. This is the current line number of the last filehandle accessed

while ( my $line = ) {
if ( $line =~ /some_target/ ) {
print "Found some_target at line $.\n";
}
}

Regards,
Rajesh Kumar
Twitt me @ twitter.com/RajeshKumarIn

Tagged :

Setting Up Perl and CGI For Wamp Server WAMP(P)

rajeshkumar created the topic: Setting Up Perl and CGI For Wamp Server WAMP(P)

chromicdesign.com/2009/05/setting-up-perl-for-wampp.html

Test.pl/test.cgi

#!C:\Perl64\bin\perl.exe
# test.cgi by Bill Weinman [http://bw.org/]
# Copyright 1995-2009 The BearHeart Group, LLC
# Free Software: Use and distribution under the same terms as perl.

use strict;
use warnings;
use CGI;

my $version = "5.1";

print foreach (
"Content-Type: text/plain\n\n",
"BW Test version $version\n",
"Copyright 1995-2009 The BearHeart Group, LLC\n\n",
"Versions:\n=================\n",
"perl: $]\n",
"CGI: $CGI::VERSION\n"
);

my $q = CGI::Vars();
print "\nCGI Values:\n=================\n";
foreach my $k ( sort keys %$q ) {
print "$k [$q->{$k}]\n";
}

print "\nEnvironment Variables:\n=================\n";
foreach my $k ( sort keys %ENV ) {
print "$k [$ENV{$k}]\n";
}

Regards,
Rajesh Kumar
Twitt me @ twitter.com/RajeshKumarIn

Tagged :

Perl Interview Questions and Answers

rajeshkumar created the topic: Perl Interview Questions and Answers

What line of code is a valid hash literal?
[first => ‘John’, last => ‘Smith’]
{first => ‘John’, last => ‘Smith’}
%{‘first’ => ‘John’, ‘last’ => ‘Smith’}
(first => ‘John’, last => ‘Smith’)
<'first' => ‘John’, ‘last’ => ‘Smith’>
Answer – {first => ‘John’, last => ‘Smith’}

How do you call a subroutine with a scalar value as an argument?
subname{$scalar};
$subname[$scalar];
$scalar=&subname;
subname($scalar);
$scalar=&subname{};
Answer – subname($scalar);

How can a SQL database be accessed like an object?
By creating a named class
Using Class::DBI
Using a typeglob
By creating a DB method
Using CGI::Persist::DBI
Answer – Using Class::DBI

What do you use to create a class?
A hash
A typeglob
A subroutine
An anonymous hash
A package
Answer – A package

What statement would open a file for both reading and writing?
open( my $fh, ‘<+', $filename ) or end $!; open( my $fh, '<>‘, $filename ) or end $!;
open( my $fh, ‘rw’, $filename ) or end $!;
open( my $fh, ‘>>’, $filename ) or end $!;
open( my $fh, ‘+<', $filename ) or end $!; Answer - open( my $fh, '+<', $filename ) or end $!; What is the purpose of the $_ variable? It: holds the current error message. is the default input and pattern matching variable. contains the current input line number of the filehandle that was last read. contains the current process ID. is the input record separator. Answer - contains the current input line number of the filehandle that was last read. What regular expression matches lines beginning with an integer followed by a period and a space character? ^[0-9]*\.[ ] ^\d+\.[ ] ^\n.\s ^[0-9]\.\s ^\d\.\s Answer - ^\d\.\s How do I set environment variables in Perl programs? you can just do something like this: $path = $ENV{'PATH'}; As you may remember, "%ENV" is a special hash in Perl that contains the value of all your environment variables. Because %ENV is a hash, you can set environment variables just as you'd set the value of any Perl hash variable. Here's how you can set your PATH variable to make sure the following four directories are in your path:: $ENV{'PATH'} = '/bin:/usr/bin:/usr/local/bin:/home/yourname/bin'; How to open and read data files with Perl Data files are opened in Perl using the open() function. When you open a data file, all you have to do is specify (a) a file handle and (b) the name of the file you want to read from. As an example, suppose you need to read some data from a file named "checkbook.txt". Here's a simple open statement that opens the checkbook file for read access: open (CHECKBOOK, "checkbook.txt"); In this example, the name "CHECKBOOK" is the file handle that you'll use later when reading from the checkbook.txt data file. Any time you want to read data from the checkbook file, just use the file handle named "CHECKBOOK". Now that we've opened the checkbook file, we'd like to be able to read what's in it. Here's how to read one line of data from the checkbook file: $record = < CHECKBOOK > ;
After this statement is executed, the variable $record contains the contents of the first line of the checkbook file. The “<>” symbol is called the line reading operator.
To print every record of information from the checkbook file

open (CHECKBOOK, “checkbook.txt”) || die “couldn’t open the file!”;
while ($record = < CHECKBOOK >) {
print $record;
}
close(CHECKBOOK);

How do I do fill_in_the_blank for each file in a directory?
Here’s code that just prints a listing of every file in the current directory:
#!/usr/bin/perl -w
opendir(DIR, “.”);
@files = readdir(DIR);
closedir(DIR);
foreach $file (@files) {
print “$file\n”;
}

How do I generate a list of all .html files in a directory?
Here’s a snippet of code that just prints a listing of every file in the current directory that ends with the extension .html:
#!/usr/bin/perl -w
opendir(DIR, “.”);
@files = grep(/\.html$/,readdir(DIR));
closedir(DIR);
foreach $file (@files) {
print “$file\n”;
}

What is Perl one-liner?
There are two ways a Perl script can be run:
–from a command line, called one-liner, that means you type and execute immediately on the command line. You’ll need the -e option to start like “C:\ %gt perl -e “print \”Hello\”;”. One-liner doesn’t mean one Perl statement. One-liner may contain many statements in one line.
–from a script file, called Perl program.

Why should I use the -w argument with my Perl programs?
Many Perl developers use the -w option of the interpreter, especially during the development stages of an application. This warning option turns on many warning messages that can help you understand and debug your applications.
To use this option on Unix systems, just include it on the first line of the program, like this:
#!/usr/bin/perl -w
If you develop Perl apps on a DOS/Windows computer, and you’re creating a program named myApp.pl, you can turn on the warning messages when you run your program like this:
perl -w myApp.pl

How to read from a pipeline with Perl
Example 1:

To run the date command from a Perl program, and read the output
of the command, all you need are a few lines of code like this:

open(DATE, “date|”);
$theDate = ;
close(DATE);

The open() function runs the external date command, then opens
a file handle DATE to the output of the date command.

Next, the output of the date command is read into
the variable $theDate through the file handle DATE.

Example 2:

The following code runs the “ps -f” command, and reads the output:

open(PS_F, “ps -f|”);
while () {
($uid,$pid,$ppid,$restOfLine) = split;
# do whatever I want with the variables here …
}
close(PS_F);

How do you find the length of an array?
$@array

How do I read command-line arguments with Perl?

With Perl, command-line arguments are stored in the array named @ARGV.
$ARGV[0] contains the first argument, $ARGV[1] contains the second argument, etc.
$#ARGV is the subscript of the last element of the @ARGV array, so the number of arguments on the command line is $#ARGV + 1.
Here’s a simple program:
#!/usr/bin/perl

$numArgs = $#ARGV + 1;
print “thanks, you gave me $numArgs command-line arguments.\n”;
foreach $argnum (0 .. $#ARGV) {
print “$ARGV[$argnum]\n”;
}

How many ways can we express string in Perl?
Many. For example ‘this is a string’ can be expressed in:
“this is a string”
qq/this is a string like double-quoted string/
qq^this is a string like double-quoted string^
q/this is a string/
q&this is a string&
q(this is a string)

Use and Require

Both the Use and Require statements are used while importing modules.

A require statement imports functions only within their packages. The use statement imports functions with a global scope so that their functions and objects can be accessed directly.

Eg. Require module;
Var = module::method(); //method called with the module reference

Eg: use module;
Var = method(); //method can be called directly

-Use statements are interpreted and are executed during the parsing whereas the require statements are executed during run time thereby supporting dynamic selection of modules.

My and Local

A variable declared with the My statement is scoped within the current block. The variable and its value goes out of scope outside the block whereas a local statement is used to temporarily assign a value to the global variable inside the block. The variable used with local statement still has global accessibility but the value lasts only as long as the control is inside the block.

For and Foreach

The for statement has an initialization, condition check and increment expressions in its body and is used for general iterations performing operations involving a loop. The foreach statement is particularly used to iterate through arrays and runs for the length of the array.

Exec and System

Exec command is used to execute a system command directly which does not return to the calling script unless if the command specified does not exist and System command is used to run a subcommand as part of a Perl script.

i.e The exec command stops the execution of the current process and starts the execution of the new process and does not return back to the stopped process. But the system command, holds the execution of the current process, forks a new process and continues with the execution of the command specified and returns back to the process on hold to continue execution.

You are required to replace a char in a string and store the number of replacements. How would you do that?

#!usr/bin/perl
use strict;
use warnings;
my $mainstring=”APerlAReplAFunction”;
my $count = ($mainstring =~ tr/A//);
print “There are $count As in the given string\n”;
print $mainstring;

You want to concatenate strings with Perl. How would you do that?

By using the dot operator which concatenates strings in Perl.
Eg. $string = “My name is”.$name

There are some duplicate entries in an array and you want to remove them. How would you do that?

If duplicates need to be removed, the best way is to use a hash.
Eg:

sub uniqueentr {
return keys %{{ map { $_ => 1 } @_ }};
}
@array1 = (“tea”,”coffee”,”tea”,”cola”,”coffee”);
print join(” “, @array1), “\n”;
print join(” “, uniqueentr(@array1)), “\n”;

What is the use of command “use strict”?

Use strict command calls the strict pragma and is used to force checks on definition and usage of variables, references and other barewords used in the script. If unsafe or ambiguous statements are used, this command stops the execution of the script instead of just providing warnings.

Explain the arguments for Perl Interpreter.

-a – automatically splits a group of input files
-c – checks the syntax of the script without executing it
-d – invokes the PERL debugger after the script is compiled
-d:module – script is compiled and control is transferred to the module specified.
-d – The command line is interpreted as single line script
-S – uses the $PATH env variable to locate the script
-T – switches on Taint mode
-v – prints the version and path level of the interpreter
-w – prints warnings

What is the use of following?

i.) –w
When used gives out warnings about the possible interpretation errors in the script.

ii.) Strict
Strict is a pragma which is used to force checks on the definition and usage of variables, references and other barewords used in the script. This can be invoked using the use strict command. If there are any unsafe or ambiguous commands in the script, this pragma stops the execution of the script instead of just giving warnings.

iii.) -T.
When used, switches on taint checking which forces Perl to check the origin of variables where outside variables cannot be used in system calls and subshell executions.

Explain different types of Perl Operators.

-Arithmetic operators, +, – ,* etc
-Assignment operators: += , -+, *= etc
-Increment/ decrement operators: ++, —
-String concatenation: ‘.’ operator
-comparison operators: ==, !=, >, < , >= etc
-Logical operators: &&, ||, !

You want to add two arrays together. How would you do that?

@sumarray = (@arr1,@arr2);
We can also use the push function to accomplish the same.

You want to empty an array. How would you do that?

-by setting its length to any –ve number, generally -1
-by assigning null list

You want to read command-line arguements with Perl. How would you do that?

In Perl, command line arguments are stored in an array @ARGV. Hence $ARGV[0] gives the first argument $ARGV[1] gives the second argument and so on. $#ARGV is the subscript of the last element of the @ARGV array, so the number of arguments on the command line is $#ARGV + 1.

You want to print the contents of an entire array. How would you do that?

Step 1: Get the size of the array using the scalar context on the array. Eg. @array = (1,2,3);
print ; “Size: “,scalar @array,”\n”;
Step 2: Iterate through the array using a for loop and print each item.

Which functions in Perl allows you to include a module file or a module and what is the difference between them?

“use”

1. The method is used only for the modules (only to include .pm type file)

2. The included objects are verified at the time of compilation.

3. We don’t need to specify the file extension.

4. loads the module at compile time.

“require”

1. The method is used for both libraries and modules.

2. The included objects are verified at the run time.

3. We need to specify the file Extension.

4. Loads at run-time.

suppose we have a module file as “Module.pm”

use Module;

or

require “Module.pm”;

(will do the same)
Regards,

Rajesh Kumar
Twitt me @ twitter.com/RajeshKumarIn

Tagged :

Perl commandline search and replace

rajeshkumar created the topic: Perl commandline search and replace

Perl commandline search and replace

The better option is using perl command line search and replace option. The syntax is the following.

# perl -i.bak -p -e’s/old/new/g’ filename
s/old/new/g

what this does is searches for pattern “old” and replace it pattern “new”.The g option in does the serch n replace globally in the file, otherwise perl searches and replaces only the first instance of the pattern.

Lets explain the options used.

-e option allows you to define Perl code to be executed by the compiler. For example, it’s not necessary to write a “Hello World” program in Perl when you can just type this at the command line.

# perl -e ‘print “Hello World\n”‘

-p option, adds loops around your -e code.It creates code like this:

LINE:
while (<>) {
# your code goes here
} continue {
print or die “-p destination: $!\n”;
}

-i option. Actually, Perl renames the input file and reads from this renamed version while writing to a new file with the original name. If -i is given a string argument, then that string is appended to the name of the original version of the file. For example, to change all occurrences of “PHP” to “Perl” in a data file you could write something like this:

# perl -i -pe ’s/PHP/Perl/g’ file.txt

Perl reads the input file a line at a time, making the substitution, and then writing the results back to a new file that has the same name as the original file — effectively overwriting it. If you’re not so confident of your Perl abilities you might take a backup of the original file, like this:

# perl -i.bak -pe ’s/PHP/Perl/g’ file.txt

Regards,
Rajesh Kumar
Twitt me @ twitter.com/RajeshKumarIn

Tagged :

Any Possible Software/Plugin FoR SCM Workflow

pankaj2252369@gmail.com created the topic: Any possible Software/plugin for SCM workflow?
Hey Team, Thanks for lot of information on the site. wonderful work.

Any idea on SCM workflow software/framework ? which would help me to complete the SDLC lifecycle.

For E.g: When ever developers are done with their changes/check-ins, they would request CM team to build (via Email), And when CM builds and deploy , they will email to Testing Team, finally when its been tested they will let CM/RM team inform about the bugs, etc. finally product will be released.

All this was happening manually(via emails). If we have a workflow software, so that we can have everything in process oriented and SCM would be very easy.

Any Suggestion are welcome.

If know of any plug-ins , we can extend our programs to make it work to our systems.

Thanks in Advance!

rajeshkumar replied the topic: Re: Any possible Software/plugin for SCM workflow?
I would suggest following in Commercial | Opensource:-
SCM Workflow consisit of following..
SCM Tools |Scripting |Build / WorkFlow Mgmt Tools |
| Release / Dep Tools | Security | Testing Tools |
Test Coverage | Source-code Analysis | Issue Tracking Tools | IDEs Integration |Virtualization |

Please find list of tools and find you combination based in your project requirement and budget

Build / WorkFlow Mgmt Tools

AnthillPro
Apache Continuum
Bamboo
CruiseControl
Hudson
LuntBuild
OpenMake Meister
TeamCity
Team Foundation Server
Electric Cloud

SCM Tools

AccuRev
ClearCase
CA Harvest
CVS
Dimensions
Git
MKS Source Integrity
Mercurial
Perforce
PVCS
StarTeam
Subversion
Synergy
Team Foundation Server
Vault
ViewVC
VSS

Scripting

Ant
Groovy
Make
Maven
MSBuild
NAnt
Shell Scripts
Perl Scripts
Visual Studio

Release / Dep Tools
Cruise
Rational Team Concert
Manual

Security

Active Directory
Kerberos
LDAP
Single Sign-on
RSA SecurID

Testing Tools
Clover
Cobertura
Emma

Source-code Analysis

Checkstyle
CodeSonar
Coverity
FindBugs
Fortify
Klocwork
PMD
Sonar

Issue Tracking Tools

Bugzilla
ClearQuest
HP Quality Center
JIRA
PVCS Tracker
Team Foundation Server
TeamTrack
VersionOne

IDEs Integration

Eclipse
RAD
Visual Studio

Virtualization

VMWare Lab Manager
Microsoft
Amazon (Elastic Cloud)
Regards,
Rajesh Kumar
Twitt me @ twitter.com/RajeshKumarIn

pankaj2252369@gmail.com replied the topic: Re: Any possible Software/plugin for SCM workflow?
Thanks for the response. But this i snot actually i am looking for.. I have idea on the mentioned tools. But wanted to create one separate tool for our internal purpose. So i am just checking, if there are any SCM related plugins /frame works in market, So that i do not spend more time on the things that are available.

Anyways.. Thank you so much!

rajeshkumar replied the topic: Re: Any possible Software/plugin for SCM workflow?
Hi John,

May be i am getting confused from you questions. Framework which can help you to develop your internal tools????

You mean you would like to develop your own tools, Then you might want to identify the technology first using which you want your development work get started. There are plenty of framework in Java| C++ | Perl | Pythin| Php | Ruby on rails etc
Regards,
Rajesh Kumar
Twitt me @ twitter.com/RajeshKumarIn

Tagged : / / / / /

Top 10 Scripting Languages in DevOps | List of Best Scripting Languages

top-10-scripting-languages-in-devops
This is the time of DevOps in software industry and DevOps uses different different languages for deployment automation and for software development. This is the reason if you are a DevOps professional and want to be succeed in DevOps role than command on scripting languages is must. But, one can not be a master of all. Right? Therefore, In this article I am going to share a list of top 10 scripting languages which will be useful for your DevOps journey.
But before that let’s have a quick look on Scripting language.
Scripting languages are programming languages that communicate and integrate with other programming languages. In other words, scripting languages controlls interactive programs operations by giving it sequence of work to execute by one command at a time.
Now, let’s look on to the list of top 10 scripting languages

1. Microsoft PowerShell

Microsoft PowerShell

Microsoft powershell or powershell is belongs to Microsoft and an open source cross platform scripting language. If you have application infrastructure with windows than powershell is must for you. This scripting language is designed for system admins.
2. Puppet

Puppet

Puppet is a configuration management tool and it has it’s own declarative language to describe system configuration. It runs on Linux, Unix-like and also on Windows. This one is available under Apache 2.7.0 and General Pubic license.  Puppet uses a custom declarative language, it just needs to specify ‘what’ action needs to be performed on the resources.
3. Chef

Chef

Chef is basically known as configuration management which belongs to chef is also a scripting language which is designed by David Morgan. It makes programs look like cooking any food.
4. Bash

Bash

Bash is basically a command language which is available in open source and written by Brian Fox in the year 1989. It can read scripts and Bash is the most commonly used Unix shell. Bash supports Linux, Windows and Mac OS.
5. Ruby

Ruby

Ruby is amongst one of the best programming language but it is also a scripting language which is written by Yukihiro Matsumoto in the year 1995. Ruby supports cross platforms and it is available under GPL and BSD license. It supports multiple programming paradigms, including functional, object-oriented, and imperative.
6. Ansible

Ansible

Ansible is known as configuration management and application deployment tool but it is also amongst top scripting languages. This language is belongs to Ansible Inc. and written by their community members. It supports Linux, Unix-like and Windows operating system.
7. Perl

Perl

Perl is a scripting language which is used for advanced web applications development. Perl is written by Larry Wall and first released in the year 1987. Perl supports cross platforms. Perl is available under general public license.
8. Python

Python

Python is also amongst the top scripting languages which is used for high level of programming. It was first released in the year 1991 by Guido van Rossum. python is available under Python Software Foundation License. It’s supports Cross-platform.
9. Go language

Go language

Go scripting language belongs to the Internet giant Google. This scripting language is written by Robert Griesemer, Rob Pike and Ken Thompson and it was released in the year 2009. It supports  Linux, macOS, FreeBSD, NetBSD, OpenBSD, Windows, Plan 9, DragonFly BSD and Solaris operating systems. It is available in open source.
10. Groovy

Groovy

Groovy can be used as a scripting language and it is also consider as a top scripting languages for DevOps professionals. It was designed by James Strachan and developed by Guillaume Laforge, Jochen Theodorou, Paul King and Cedric Champeau. It was first released in the year 2003 and available under Apache license. It supports Java platform.
Do you agree with this list? If not than feel free to respond in the comment box with your own take on the most essential scripting languages. One more thing, I would like to add here, if you need help to learn all these scripting languages and DevOps courses than scmGalaxy can help you in this. scmGalaxy is a community of DevOps professionals who are well experienced in this domain.
Tagged : / / / / / / / / / / / / / / / / / / /