Множество способов, большинство из которых легко понять:
#!/bin/sh
n=$(tr -dc "_" | wc -c)
echo $((n+1))
#!/bin/sh
tr " _" "x " | wc -w
#!/usr/bin/env bash
read -r string
len1=${#string}
string=${string//_/}
len2=${#string}
echo $((len1-len2+1))
#!/usr/bin/env perl
print (scalar split /_/, <STDIN>)."\n";
#!/usr/bin/env python3
import sys
print(len(sys.stdin.readline().split("_")))
#!/usr/bin/env ruby
puts gets.split(/_/).length
#include <stdio.h>
int main(void) {
int c, n = 1;
for (;;) {
c = getchar();
if (c == EOF || c == '\n')
break;
else if (c == '_')
n++;
}
printf("%u\n", n);
return 0;
}